转载请注明出处!


首先介绍下NY8B062E与NY8B062D最终区别:

其实NY8B062E就是NY8B062D升级款,NY8B062D基本停产了,成本也高于NY8B062E

  1. NY8B062E 有ADC 偏移校准 NY8B062D没有

  2. NY8B062E ADC耗电只需要500mV,NY8B062D则需要3mA

  3. NY8B062E 内部LDO误差只有百分之正负0.5,而NY8B062D是正负百分之1

  4. NY8B062E 输入施密特触发 是可以开启和关闭的,NY8B062D是没有的

  5. NY8B062E PWM 通道有4组(非常适合RGBW应用),NY8B062只有3路,勉强做个RGB应用

NY8B062D 视频简介

*项目:NY8B062E ADC_Interrupt
*文件:NY8B062E main.c
*描述:NY8B062E ADC转换中断结束
*1.设置ADC时钟频率为1MHz,采样脉冲宽度为8 ADC时钟,
*NY8B062E ADC转换时间=(8+12+2)*1us=22us,ADC转换率=1/22us=45.5KHz
*2.NY8B062E 将AIN1(PA1)设置为ADC模拟输入
*3.NY8B062E 将ADC转换结果bit11~bit4存储到RAM“R_AIN1_DATA_HB”,bit3~bit0存储到RAM“R_ AIN1_ DATA_ LB[3:0]”(x=0~4)

#include <ny8.h>
#include "ny8_constant.h"unsigned char R_AIN1_DATA_HB;
unsigned char R_AIN1_DATA_LB;#define UPDATE_REG(x)  __asm__("MOVR _" #x ",F")void F_wait_eoc(void);
void delay(int);//! interrupt service routine
void isr(void) __interrupt(0)
{ADRbits.ADIF = 0;                      // Clear adc interrupt flag bitR_AIN1_DATA_HB = ADD;                    // RAM "R_AIN1_DATA_HB" Store AIN1's ADC data bit 11~4R_AIN1_DATA_LB = 0x0F & ADR;          // RAM "R_AIN1_DATA_LB" bit3~0 Store AIN1's ADC data bit 3~0ADMDbits.START =1;                      // Start a ADC conversion session       }void main(void)
{R_AIN1_DATA_HB=R_AIN1_DATA_LB=0x00;//----- Initial GPIO-----IOSTA = C_PA_Input;                        // Set PortA as input portPORTA = 0xFF;                         // PortA Data Register = 0xFFINTE  = 0x00;                          // INTE = 0x00//----- Initial ADC-----    ADMD  = C_ADC_En | C_ADC_CH_Dis | C_ADC_PA1 ; // Enable ADC power, Disable global ADC input channel. Select PA1 pad as ADC input (SFR "ADMD")//----- ADC high reference voltage source select-----ADVREFH = C_Vrefh_VDD;                  // ADC reference high voltage is supplied by internal VDD (Note: ADC clock freq. must be equal or less than 2MHz @ VDD=5.0V) //ADVREFH = C_Vrefh_4V;                    // ADC reference high voltage is supplied by internal 4V  (Note: ADC clock freq. must be equal or less than 1MHz)//ADVREFH = C_Vrefh_3V;                    // ADC reference high voltage is supplied by internal 3V  (Note: ADC clock freq. must be equal or less than 500KHz)//ADVREFH = C_Vrefh_2V;                  // ADC reference high voltage is supplied by internal 2V  (Note: ADC clock freq. must be equal or less than 250KHz)//----- ADC clock frequency select----------------------------    ADR     = C_Ckl_Div1;                      // ADC clock=Fcpu/1, Clear ADIF, disable ADC interrupt  //ADR    = C_Ckl_Div2;                  // ADC clock=Fcpu/2, Clear ADIF, disable ADC interrupt  //ADR     = C_Ckl_Div8;                 // ADC clock=Fcpu/8, Clear ADIF, disable ADC interrupt  //ADR    = C_Ckl_Div16;                 // ADC clock=Fcpu/16, Clear ADIF, disable ADC interrupt //----- ADC Sampling pulse width select-------------     //ADCR  = C_Sample_1clk | C_12BIT;     // Sample pulse width=1 adc clock, ADC select 12-bit conversion ( Note: ADC clock freq. must be equal or less than 500KHz)//ADCR  = C_Sample_2clk | C_12BIT;        // Sample pulse width=2 adc clock, ADC select 12-bit conversion ( Note: ADC clock freq. must be equal or less than 1MHz)//ADCR  = C_Sample_4clk | C_12BIT;      // Sample pulse width=4 adc clock, ADC select 12-bit conversion ( Note: ADC clock freq. must be equal or less than 1.25MHz)ADCR  = C_Sample_8clk | C_12BIT;         // Sample pulse width=8 adc clock, ADC select 12-bit conversion ( Note: ADC clock freq. must be equal or less than 2MHz)    //--------------------------------------------------    PACON = C_PA1_AIN1;                     // Set AIN1(PA1) as pure ADC input for reducing power consumption (SFR "PACON")ADMDbits.GCHS = 1;                       // Enable global ADC channel    (SFR "ADMD")ADRbits.ADIF = 0;                       // Clear adc interrupt flag bitADRbits.ADIE = 1;                        // Enable adc interrupt bitdelay(50);                               // Delay 1.12ms(Instruction clock=4MHz/4T) for waiting ADC stableADMDbits.START =1;                     // Start a ADC conversion session   ENI();while(1){CLRWDT();                            // Clear WatchDog}
}void delay(int count)
{int i;for(i=1;i<=count;i++);
}

更多关于NY8B062E,请留言或者与我联系!

NY8B062E 例程之 ADC_Interrupt相关推荐

  1. 2.AT32F403A例程之-STemWin移植

    2.AT32F403A例程之-STemWin移植 文章目录 前言 一.STemWin下载 二.STemWin的LCD接口介绍 三.雅特力AT32F403A工程准备 四.雅特力AT32F403A的LCD ...

  2. 21.国民技术N32G45X例程之-U盘模式IAP升级固件

    21.国民技术N32G45X例程之-U盘模式IAP升级固件 文章目录 前言 一.准备工作 1.国民技术N32G45X提供的库 2.下载本作者原创BIN文件合成软件 3.为什么要合成BIN文件? 二.U ...

  3. c语言reentrant,Reentrant Non-reentrant Function

    在学习C语言的时候,编写些函数的小例程时,我们大多数时候都没有去考虑该函数的可重入和不可重入性,但是在嵌入式编程中,因为涉及到中断服务或者多线程的调用,就需要考虑我们当前的定义的变量是否可以共享,如果 ...

  4. 一个小兔子的大数据见解2

    Big Data 阿里的大数据解决方案 MAXCOMPUTE DATAWORKS QUICKBI 1.Vmware增强 2. 1.1.VMware 虚拟网络设备 1.1.1.虚拟网卡.虚拟交换机 虚拟 ...

  5. 《Java150道面试题全集》

    本文转载他人,自留作笔记用,请尊重原创作者. 1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两 ...

  6. ChatGPT教程之 06 ChatGPT 和 DevOps 用例概述

    什么是聊天 GPT? GPT(Generative Pretrained Transformer)是 OpenAI 开发的一种自然语言处理(NLP)模型.它是一个庞大而强大的模型,可以根据接收到的输入 ...

  7. (JAVA)线程之lock和死锁(例)

    package thread; import java.util.concurrent.locks.*;/*** @author Alina* @date 2021年12月20日 11:07 下午* ...

  8. cyclicbarrier java_Java并发编程之CyclicBarrier和线程池的使用

    原标题:Java并发编程之CyclicBarrier和线程池的使用 下面我们来讲述一下线程池和CyclicBarrier的使用和对比. 一.场景描述 有四个游戏玩爱好者玩游戏,游戏中有三个关卡,每一个 ...

  9. Wireshark数据抓包教程之Wireshark的基础知识

    Wireshark数据抓包教程之Wireshark的基础知识 Wireshark的基础知识 在这个网络信息时代里,计算机安全始终是一个让人揪心的问题,网络安全则有过之而无不及.Wireshark作为国 ...

最新文章

  1. matlab2014a + win764bit + vs2013混合编程(.m转成dll供C++调用)
  2. goland 设置project gopath
  3. 关于使用ajax给全局变量赋值失败的问题
  4. win phone 获取并且处理回车键事件
  5. innosetup区分正常状态和静默安装状态(通过传递的参数)
  6. 使用aggregate在MongoDB中查找重复的数据记录
  7. 孤儿进程、僵尸进进程
  8. Asp.net 2.0 自定义控件开发专题讲解[为用户控件增加DataSource属性, 能够自动识别不同数据源](示例代码下载)...
  9. HEXO Nunjucks Error
  10. 深度学习中的优化算法之Adadelta
  11. JavaScript 学习手册二:JS 数据类型
  12. 关于ramp texture的使用
  13. PC屏幕颜色识别实现鼠标自动点击
  14. table 手机 滑动_【推荐下载】html5手机端手指滑动选项卡滚动切换效果(转)
  15. 电脑开机后显示屏只显示品牌Logo就黑屏
  16. PyPDF2--如何使用python操作你的PDF文档
  17. 亚商投资顾问早餐FM/0119阿兹夫定正式纳入医保
  18. 背单词app软件测试与评估
  19. 世界上最全的防醉酒+解酒法(为了关心的人,一定要看看哦)
  20. Jenkin权限控制——基于角色授权策略

热门文章

  1. 【ClickHouse系列】clickhouse-copier是如何进行数据迁移的
  2. 泰坦服务器装系统,深海泰坦X8Ti笔记本安装win10系统操作方法
  3. 微星B550M迫击炮WiFi板第二条M2固态(M2_2接口)不识别问题
  4. 2022年亚马逊AWS认证考试及学习路径
  5. 互联网的精神是什么?
  6. 四合天地软件测试系统,GZ-2017025软件测试赛题.-全国职业院校技能大赛.doc
  7. @Valid 和@Validated 总结
  8. Java三层结构,附源码
  9. 理解 Hexdump
  10. ushort mysql,Mysql的CodeFirst:不支持ushort、uint、ulong的字段提示不足