芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

LPC2148的ADC多通道数据采集程序PCB抄板

  1. PCB抄板#include "config.h"
  2. PCB抄板#include "stdio.h"
  3. PCB抄板#define   GPIOSET(PIN)  IO0SET = PIN    // 方便修改置位端口
  4. PCB抄板#define   GPIOCLR(PIN)        IO0CLR = PIN    // 方便修改清位端口
  5. #define   LCD_CON           0x00000250           // 液晶显示控制字
  6. #define  E_CLK  (1<<4)                    //clock input   同步时钟输入端         P0.4
  7. const uint32  RW_SID=  (1<<6);         //data input/output 串行数据输入、输出端        P0.6      
  8. const uint32  CS =     (1<<9);                  //P0.9
  9. unsigned char IC_DAT1[] = "多通道数据采集系统";

  10. /*************************************************************
  11. *  名称:delay()
  12. *  功能:延时程序
  13. **************************************************************/
  14. void delay(uint32 dly)
  15. {
  16.         uint32 i;
  17.        
  18.         for ( ; dly>0; dly--)
  19.                 for (i=0; i<10; i++);
  20. }
  21.   
  22. /******************************************************************
  23. *  名称:SeddByte()
  24. *  功能:发送1字节数据
  25. *******************************************************************/
  26. void     SendByte(uint8    data)   
  27.     {   
  28.       uint8   i;
  29.       IO0SET=CS;  
  30.       for(i=0;i<8;i++)   
  31.        {  
  32.                         IO0CLR=E_CLK ;delay(5);
  33.                         if(data&0x80)
  34.                         {
  35.                                 IO0SET=RW_SID;delay(5);
  36.                         }
  37.                         else IO0CLR=RW_SID;   
  38.                         {
  39.                                 IO0SET=E_CLK;delay(5);
  40.                         }
  41.                         data=data<<1;   
  42.        }
  43.        IO0CLR=CS;  
  44.     }
  45.   
  46. /******************************************************************
  47. *  名称:ReceieveByte()
  48. *  功能:接收1字节数据
  49. *******************************************************************/   
  50. unsigned char ReceieveByte(void)   
  51.   {   
  52.           uint8     i,d1,d2;   
  53.     for(i=0;i<8;i++)   
  54.         {   
  55.                 IO0CLR=E_CLK;delay(5);  
  56.                 IO0SET=E_CLK;delay(5);
  57.                 if(RW_SID)d1++;   
  58.                 d1=d1<<1;   
  59.         }   
  60.     for(i=0;i<8;i++)   
  61.         {   
  62.                 IO0CLR=E_CLK;delay(5);  
  63.                 IO0SET=E_CLK;delay(5);  
  64.                 if(RW_SID)d2++;   
  65.                 d2=d2<<1;   
  66.         }   
  67.      return     (d1&0xF0+d2&0x0F);   
  68.     }
  69.   
  70. /***************************************************************
  71. *  名称:SendCMD()
  72. *  功能:向LCD12864发送命令
  73. ****************************************************************/  
  74. void     SendCMD(uint8     data)   
  75.     {
  76.         SendByte(0xF8);                                         
  77.         SendByte(data&0xF0);                                        
  78.                 SendByte((data&0x0F)<<4);                    
  79.         }
  80.   
  81. /*************************************************************
  82. * 名称:SendData()
  83. * 功能:向LCD12864发送数据
  84. **************************************************************/  
  85. void     SendData(uint8     data)   
  86.     {
  87.         SendByte(0xFA);                                         
  88.         SendByte(data&0xF0);                                       
  89.                  SendByte((data&0x0F)<<4);                    
  90.         }
  91.        
  92. /****************************************************************
  93. * 名称:lcd_mesg()
  94. * 功能:在LCD12864上显示汉字
  95. *****************************************************************/
  96.    
  97. void     lcd_mesg(uint8     x_add, unsigned char * word)   
  98.     {   
  99.          SendCMD(x_add);                               
  100.               while(*word)
  101.               {
  102.                  SendData(*(word++));             
  103.               }
  104.     }
  105. /*************************************************************
  106. *  名称:initinal()
  107. *  功能:LCD12864字库初始化
  108. **************************************************************/
  109.    
  110. void     initlcm(void)   
  111.     {   
  112.          delay(200);     
  113.          SendCMD(0x30);                //功能设置,一次送8位数据,基本指令集   
  114.          SendCMD(0x0C);                //0000,1100     整体显示,游标off,游标位置off   
  115.          SendCMD(0x01);                //0000,0001     清DDRAM   
  116.          SendCMD(0x02);                //0000,0010     DDRAM地址归位   
  117.          SendCMD(0x80);                //1000,0000     设定DDRAM 7位地址000,0000到地址计数器AC   
  118. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信