这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 中颖电子单片机,应用笔记

共1条 1/1 1 跳转至

中颖电子单片机,应用笔记

助工
2014-10-08 21:02:06     打赏

因为资料比较少,


 


只有自己用一下,写一个自己的应用笔记吧,


 


LCD:注意频率,在几k 就好,不要太高, 针频率 和 对比度是成比例的,需要自己调解看看;


 


ADC:ADC定义之后,当转换之后,需要再一次定义一下ADC通道ADCH,ADCON可能被串改;


         查询模式就是 不把中断打开,照样进行转换,启动转换后,不停查询ADCIF是否变成1,


         变成1则表示转换完成。读取AD DATA后,请将ADCIF清0,再次开始转换。


 


         GO/DONE表示ADC开始与结束,如果写1,则转换开始,如果被清0,


         则转换结束在结束的同时,ADCIF置1,如果同时中断允许打开,则会同时产生中断。
         ADCIF表示中断请求,置1表示中断请求已经有了,这个是中断系统的。


 


          10位AD 用法 :    


          adl=ADDL;                                     //读取低8位转换数据              
          adh=ADDH;                                  //读取高2位转换数据
          ADCH=1;                                     //重设置通道


          advalue=(adh<<2)+(adl&0x03); //将高低位数据进行合并


 


看门狗: 看门狗是长开的状态,需要我们软件不停的清标志位:RSTSTAT = Bin(00000000);//最长时间2048ms


 


Flash:  0x000H-0x3FFFH 是16k Flash区,


           前面的EEPROM是在独立区,EEPROM无法在Memory窗口下看到的,所以用起来不是很方便,


           所以直接从Flash区划分出最后一个区作为存储比较好用,0x3c00-0x3fff,1k空间;


           f166的Flash操作的时候,不用设置读写时钟,方便了一些,


           不过操作的时候注意关掉没有用的操作和中断,防止写坏flash,


           其他用法和带Flash的其他单片机是一样。


           调试经验:第一次擦除芯片,下载程序到芯片,硬件仿真,ok,退出硬件仿真,


                          第二次,直接硬件仿真,看你写的Flash数据ok。


 


 


Timer: 我们用timer2,我搞了2天,才发现,大家要注意变量,TF2 必须清0,要不Timer2会不停的进入中断,


           出现这种错误,用示波器看大约237us的周期。


           Timer4,工作在Bank1,必须定义T4CON之前要开启Bank1,


           #define  Enter_Bank0  INSCON&=0x3f 
           #define  Enter_Bank1  {INSCON&=0x3f;INSCON|=0x40;}


           默认状态是Bank0,进行切换Band1的时候,要关闭中断;最好每次都要定义一下Bank0。


 


Keill 应用:注意:每次都要,编译,生成hex,擦芯片,下载程序,硬件仿真,按照这个顺序就不会有错误了;


                这个芯片很怪异,有的时候程序没有下载进去,就开始仿真了,所以要注意顺序。


 


仿真器:仿真器io 和 lcd io是复用的, 如果用lcd,就必须每次都要拔掉仿真器看结果,


            用74hc4066做一个隔离,就不用每次都拔插仿真器了,隔离效果一般,不过可以用,廉价。(cd4066不可用)


            如果io够用,可以避开哪几个复用io,就可以正常仿真了。


 


Ram:   内部256 字节,外部256字节,lcd  19字节,用着让人闹心;定义的上限data128, idata 128,  xdata256


共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]