找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 11145|回复: 1
打印 上一主题 下一主题
收起左侧

核辐射检测仪程序(盖格计数器)及效果图

[复制链接]
跳转到指定楼层
楼主
ID:111475 发表于 2016-3-30 22:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式



    这是我自己想的一种方法,利用盖格计数器来技术每秒射线次数来检测辐射强度。

本系列文章:
盖格剂检测核辐射:http://www.51hei.com/bbs/dpj-47401-1.html
盖格管检测电路:http://www.51hei.com/bbs/dpj-47429-1.html

//main.c
  1. #include"config.h"
  2. #include"5110.h"
  3. #include"h1838.h"
  4. #include"iic.h"
  5. #include"ta.h"
  6. int main( void )
  7. {
  8. extern_16m();
  9. h1838_init();
  10. LCD5110_init();
  11. LCD_init();
  12. DS1302_Reset();
  13. LCD_clear();
  14. init_TA();
  15. __bis_SR_register(GIE);
  16. while(1)
  17. {
  18.    
  19.    Red_Code();
  20. }
  21. }


  22. //5110.h
  23. #define   res1 P1OUT|=BIT0;  //复位,0复位
  24. #define   res0 P1OUT&=~BIT0;
  25. #define   sce1 P1OUT|=BIT1;  //片选
  26. #define   sce0 P1OUT&=~BIT1;  //片选
  27. #define   dc1  P1OUT|=BIT2;  //1写数据,0写指令
  28. #define   dc0  P1OUT&=~BIT2;
  29. #define   sdin1 P1OUT|=BIT3;  //数据改为P1.7口
  30. #define   sdin0 P1OUT&=~BIT3;
  31. #define   sclk1 P1OUT|=BIT4;  //时钟
  32. #define   sclk0 P1OUT&=~BIT4;
  33. #define   led1  P1OUT&=~BIT5;
  34. #define   led0  P1OUT&=~BIT5;

  35. unsigned const zimu[]={

  36. 0xF0,0x08,0x08,0x18,0xE0,0x00,0x1F,0x20,0x20,0x30,0x0F,0x00,/*"0",0*/
  37. 0x00,0x10,0xF8,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,/*"1",1*/
  38. 0x70,0x08,0x08,0x08,0xF0,0x00,0x30,0x2C,0x22,0x21,0x30,0x00,/*"2",2*/
  39. 0x30,0x08,0x88,0x88,0x70,0x00,0x18,0x20,0x20,0x31,0x1E,0x00,/*"3",3*/
  40. 0x00,0x80,0x60,0xF0,0x00,0x00,0x06,0x05,0x24,0x3F,0x24,0x04,/*"4",4*/
  41. 0xF8,0x08,0x88,0x88,0x08,0x00,0x19,0x21,0x20,0x31,0x1F,0x00,/*"5",5*/
  42. 0xE0,0x18,0x88,0x98,0x00,0x00,0x0F,0x31,0x20,0x20,0x1F,0x00,/*"6",6*/
  43. 0x38,0x08,0x08,0xE8,0x18,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,/*"7",7*/
  44. 0x70,0x88,0x08,0x88,0x70,0x00,0x1E,0x21,0x21,0x21,0x1E,0x00,/*"8",8*/
  45. 0xF0,0x08,0x08,0x18,0xE0,0x00,0x01,0x32,0x22,0x31,0x0F,0x00,/*"9",9*/
  46. 0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,/*":",10*/
  47. 0x80,0x80,0x80,0x80,0x00,0x00,0x3F,0x00,0x3F,0x00,0x3F,0x00,/*"m",11*/
  48. 0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x3D,0x26,0x22,0x3F,0x20,/*"a",12*/
  49. 0x80,0x80,0x00,0x00,0x80,0x80,0x00,0x07,0x38,0x1C,0x03,0x00,/*"v",13*/
  50. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,/*".",14*/
  51. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",15*/
  52. 0xF0,0x98,0x60,0xE0,0x38,0x00,0x00,0x31,0x0E,0x1F,0x33,0x0C,/*"%",16*/
  53. 0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x33,0x00,0x00,0x00,/*"!",17*/

  54. };


  55. unsigned const hanzi[]=
  56. {


  57. 0x00,0x00,0xF0,0x90,0x90,0xFE,0x90,0x90,0x90,0xF0,0x00,0x00,0x00,0x00,0x0F,0x04,
  58. 0x04,0x7F,0x44,0x44,0x44,0x47,0x78,0x00,/*"电",0*/
  59. 0x00,0x00,0xFC,0x04,0x04,0x04,0xFC,0x04,0x04,0x84,0x04,0x00,0x00,0x38,0x47,0x41,
  60. 0x41,0x41,0x3F,0x41,0x45,0x58,0x20,0x00,/*"压",1*/
  61. 0x00,0x40,0x8C,0x70,0xC8,0x68,0x5A,0x44,0x68,0xC8,0x00,0x00,0x00,0x38,0x0F,0x40,
  62. 0x3E,0x01,0x3E,0x01,0x3E,0x41,0x70,0x00,/*"流",2*/
  63. 0x00,0x40,0xC4,0x40,0x40,0xBC,0x84,0x84,0xBC,0xC0,0x20,0x00,0x00,0x00,0x0F,0x98,
  64. 0x88,0x43,0x2C,0x18,0x26,0x61,0x40,0x00,/*"设",3*/
  65. 0x00,0x30,0x90,0x90,0x90,0x8A,0x94,0x90,0x90,0x70,0x10,0x00,0x00,0x40,0x30,0x1E,
  66. 0x20,0x3B,0x44,0x44,0x44,0x44,0x40,0x00,/*"定",4*/
  67. 0x00,0x40,0xC4,0x00,0x00,0xFC,0xA4,0x7C,0xA4,0xA4,0xFC,0x00,0x00,0x00,0x3F,0x18,
  68. 0x3C,0x03,0x1F,0x12,0x1E,0x40,0x7F,0x00,/*"调",5*/
  69. 0x00,0x20,0x58,0xFE,0xD8,0x74,0x28,0x7E,0xC8,0x38,0x08,0x00,0x00,0x42,0x45,0x7B,
  70. 0x44,0x7F,0x52,0x55,0x54,0x43,0x42,0x00,/*"整",6*/
  71. 0x00,0x18,0x28,0x08,0x68,0xDE,0x48,0x28,0x48,0x38,0x00,0x00,0x00,0x02,0x11,0x10,
  72. 0x13,0x7E,0x12,0x13,0x11,0x11,0x08,0x00,/*"率",7*/


  73. };

  74. void LCD5110_init()
  75. {
  76.    P1DIR|=0X3F;
  77.    P1OUT&=~0X20;
  78. }

  79. /*--------------------------------------------
  80. LCD_write_byte: 使用SPI接口写数据到LCD
  81. 输入参数:dt:写入的数据;
  82. command :写数据/命令选择;
  83. 编写日期:20080918
  84. ----------------------------------------------*/
  85. void LCD_write_byte(unsigned char dt, unsigned char command)
  86. {
  87.         unsigned char i;
  88.         sce0;        
  89.         if(command==1)
  90.         {dc1;        }
  91.         else {dc0;}
  92.         for(i=0;i<8;i++)
  93.         {
  94.                 if(dt&0x80)
  95.                 {sdin1;}
  96.                 else
  97.                 {sdin0;}
  98.                 dt=dt<<1;               
  99.                 sclk0;                 
  100.                 sclk1;
  101.         }        
  102.         dc1;        
  103.         sce1;        
  104.         sdin1;
  105. }
  106. /*---------------------------------------
  107. LCD_init: 3310LCD初始化
  108. 编写日期:20080918
  109. -----------------------------------------  */
  110. void LCD_init(void)
  111. {
  112.         res0;         
  113. //          delay_ms(1);
  114.           res1;  
  115.         LCD_write_byte(0x21,0);//初始化Lcd,功能设定使用扩充指令
  116.         LCD_write_byte(0xd0,0);//设定液晶偏置电压
  117.         LCD_write_byte(0x20,0);//使用基本指令
  118.         LCD_write_byte(0x0C,0);//设定显示模式,正常显示
  119. }
  120. /*-------------------------------------------
  121. LCD_set_XY: 设置LCD坐标函数
  122. 输入参数:X:0-83  Y:0-5
  123. 编写日期:20080918
  124. ---------------------------------------------*/
  125. void LCD_set_XY(unsigned char X, unsigned char Y)
  126. {
  127.         LCD_write_byte(0x40 | Y, 0);// column
  128.         LCD_write_byte(0x80 | X, 0);// row
  129. }
  130. /*------------------------------------------
  131. LCD_clear: LCD清屏函数
  132. 编写日期:20080918
  133. --------------------------------------------*/
  134. void LCD_clear(void)
  135. {
  136.         unsigned char t;
  137.         unsigned char k;
  138.         LCD_set_XY(0,0);
  139.         for(t=0;t<6;t++)
  140.         {
  141.                 for(k=0;k<84;k++)
  142.                 {
  143.                         LCD_write_byte(0x00,1);
  144.                                 
  145.                 }
  146.         }
  147. }
  148. /*---------------------------------------------
  149. LCD_write_shu: 显示8(宽)*16(高)点阵列数字字母符号等半角类
  150. 输入参数:c:显示的字符;
  151. 编写日期:20080918
  152. -----------------------------------------------*/
  153. void LCD_write_shu(unsigned char row, unsigned char page,unsigned char c) //row:列 page:页 dd:字符
  154. {
  155.         unsigned char i;         
  156.         
  157.         LCD_set_XY(row*6, page);// 列,页
  158.         for(i=0; i<6;i++)
  159.         {
  160.                 LCD_write_byte(zimu[c*12+i],1);
  161.         }
  162.         
  163.     LCD_set_XY(row*6, page+1);// 列,页
  164.         for(i=6; i<12;i++)
  165.         {
  166.                 LCD_write_byte(zimu[c*12+i],1);
  167.         }               
  168. }
  169. /*---------------------------------------------
  170. LCD_write_hanzi: 显示12(宽)*16(高)点阵列汉字等半角类
  171. 输入参数:c:显示的字符;
  172. 编写日期:20080918
  173. -----------------------------------------------*/
  174. void LCD_write_hanzi(unsigned char row, unsigned char page,unsigned char c) //row:列 page:页 dd:字符
  175. {
  176.         unsigned char i;         
  177.         
  178.         LCD_set_XY(row*6, page);// 列,页
  179.         for(i=0; i<12;i++)
  180.         {
  181.                 LCD_write_byte(hanzi[c*24+i],1);
  182.         }
  183.         
  184.     LCD_set_XY(row*6, page+1);// 列,页
  185.         for(i=12; i<24;i++)
  186.         {
  187.                 LCD_write_byte(hanzi[c*24+i],1);
  188.         }        
  189. }


  190. // config.h
  191. #include <msp430.h>
  192. #define uchar unsigned char
  193. #define uint unsigned int
  194. #define ulong unsigned long


  195. #define CPU_F ((double)16000000)   //外部高频晶振8MHZ
  196. //#define CPU_F ((double)32768)   //外部低频晶振32.768KHZ
  197. #define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
  198. #define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))

  199. #define KEY_0     0x16                 //键0
  200. #define KEY_1     0x0C                 //键1
  201. #define KEY_2     0x18                 //键2
  202. #define KEY_3     0x5E                 //键3
  203. #define KEY_4     0x08                 //键4
  204. #define KEY_5     0x1C                 //键5
  205. #define KEY_6     0x5A                 //键6
  206. #define KEY_7     0x42                 //键7
  207. #define KEY_8     0x52                 //键8
  208. #define KEY_9     0x4A                 //键9
  209. #define prex      0x44                 //电源
  210. #define nex       0x40                 //模式
  211. #define play_pause 0x43                 //静音
  212. #define ch_       0x45                //模式
  213. #define ch        0x46  
  214. #define cha       0x47                 //模式
  215. #define __         0x07
  216. #define _a        0x15
  217. #define eq        0x09
  218. #define _100a      0x19
  219. #define _200a      0x0d
  220. #define power      0x12            //power
  221. #define up      0x1b            //up
  222. #define down      0x1a            //down
  223. #define left      0x04            //left
  224. #define right      0x06            //right
  225. #define ok      0x05            //0k

  226. void extern_16m()
  227. {
  228.    WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  229.   if (CALBC1_1MHZ==0xFF)                                        // If calibration constant erased
  230.   {                                                                                       
  231.     while(1);                               // do not load, trap CPU!!        
  232.   }
  233.   DCOCTL = 0;                               // Select lowest DCOx and MODx settings
  234.   BCSCTL1 = CALBC1_16MHZ;
  235.   DCOCTL = CALDCO_16MHZ;                     // Load 8MHz constants
  236. }

  237. //h1838.h
  238. #define IR_DIR_IN P2DIR&=~BIT0//红外接收头P1.0设置为输入,
  239. #define RED_R (P2IN&BIT0)//红外接收头输入值
  240. void h1838_init()
  241. {
  242.   IR_DIR_IN;
  243. }


  244. uchar KEY_VAL;
  245. uchar key_code[4],code_value;

  246. void Key_Icode(uchar dat)
  247. {
  248.    switch(dat)                    //第3个字节是数据,第4个字节是反码
  249.    {                                      //为了更稳定,可以加上第4个字节数据的判断
  250.    case KEY_0:KEY_VAL=0;LCD_write_shu(0,0,0); break;
  251.    case KEY_1:KEY_VAL=1; LCD_write_shu(0,0,1); break;
  252.    case KEY_2:KEY_VAL=2; LCD_write_shu(0,0,2); break;
  253.    case KEY_3:KEY_VAL=3; LCD_write_shu(0,0,3); break;
  254.    case KEY_4:KEY_VAL=4; LCD_write_shu(0,0,4); break;
  255.    case KEY_5:KEY_VAL=5; LCD_write_shu(0,0,5); break;
  256.    case KEY_6:KEY_VAL=6; LCD_write_shu(0,0,6);break;
  257.    case KEY_7:KEY_VAL=7; LCD_write_shu(0,0,7); break;
  258.    case KEY_8:KEY_VAL=8; LCD_write_shu(0,0,8); break;
  259.    case KEY_9:KEY_VAL=9; LCD_write_shu(0,0,9); break;
  260.    case prex:break;
  261.    case nex :break;
  262.    case play_pause:break;
  263.    case ch_: break;
  264.    case ch: break;
  265.    case cha:break;
  266.    case eq: break;
  267.    case _a:;break;
  268.    case __:break;
  269.    case _100a:break;
  270.    case _200a:break;
  271.    
  272.     case power:break;
  273.    case up: break;
  274.    case down:break;
  275.    case left:break;
  276.    case right:break;
  277.    case ok:break;
  278.    default:KEY_VAL=' ';break;
  279.    }
  280. }

  281. void Red_Code()
  282. {
  283. uchar i,j,k = 0;

  284. for(i = 0;i < 19;i++)
  285. {
  286.   delay_us(400);           //延时400us
  287.   if(RED_R)                //9ms内有高电平,则判断为干扰,退出处理程序
  288.   {
  289.       return;
  290.   }
  291. }

  292. while(!RED_R);            //等待9ms低电平过去
  293. for(i=0;i<5;i++)          //是否连发码
  294. {
  295.   delay_us(500);
  296.   if(!RED_R)
  297.    {
  298.      return;
  299.    }
  300. }


  301. while(RED_R);               //等待4.5ms高电平过去

  302. for(i = 0;i < 4;i++)        //接收4个字节的数据
  303. {
  304.   for(j = 0;j < 8;j++)      //每个字节的数据8位
  305.   {
  306.    

  307.    while(!RED_R);           //等待变高电平
  308.    while(RED_R)             //计算高电平时间
  309.    {
  310.     delay_us(100);
  311.     k++;
  312.     if(k >22)               //高电平时间过长,则退出处理程序
  313.     {
  314.      return;         
  315.     }
  316.    
  317.    }

  318.    code_value>>=1;          //接受一位数据
  319.    if(k >= 7)
  320.    {
  321.     code_value|=0x80;       //高电平时间大于0.56,则为数据1
  322.    }
  323.    k = 0;                  //计时清零
  324.   }
  325.   key_code[i]=code_value;  //四个字节的数据
  326. }
  327.   Key_Icode(key_code[2]);             //调用赋值函数

  328. // Display_Key(KEY_VAL);     //显示按键值
  329.   
  330. //  delay_ms(50);

  331. }


  332. //ta.h
  333. uchar t1;
  334. void init_TA()
  335. {

  336.   TACCR0 = 50000;                            //25ms中断一次
  337.   TACTL = TASSEL_2 + MC_1+ID_3;              // SMCLK, upmode,8分频,
  338.   TACCTL0 = CCIE;                           // TACCR0 interrupt enabled
  339. }

  340. #pragma vector=TIMER0_A0_VECTOR  
  341. __interrupt void TIMERA0_ISR() // the interrupt source is CC0
  342. {
  343.   if(++t1>=40)
  344.   {
  345.     t1=0;
  346.     DS1302_GetData_dis();
  347.   }  
  348. }


  349. //iic.h

  350. ///时钟模块
  351. #define DS1302_DIR  P2DIR
  352. #define DS1302_IN    P2IN
  353. #define DS1302_OUT  P2OUT

  354. #define DS1302_RST  BIT6
  355. #define DS1302_SCLK  BIT4
  356. #define DS1302_SDI  BIT5  //定义MSP320的端口

  357. #define DS1302_RST_LO  P1OUT &= ~DS1302_RST
  358. #define DS1302_RST_HI  P1OUT |= DS1302_RST
  359. #define DS1302_SCLK_LO  DS1302_OUT&= ~DS1302_SCLK
  360. #define DS1302_SCLK_HI  DS1302_OUT |= DS1302_SCLK
  361. #define DS1302_SDI_LO  DS1302_OUT &= ~DS1302_SDI
  362. #define DS1302_SDI_HI  DS1302_OUT |= DS1302_SDI


  363. void DS1302_Reset(void);
  364. void DS1302_WriteOneByte(unsigned char w_dat);
  365. void DS1302_WriteData(unsigned char addr,unsigned char w_dat);
  366. void DS1302_SettingData(void);
  367. void DS1302_GetData(unsigned char *str);
  368. unsigned char DS1302_ReadOneByte(void);
  369. unsigned char DS1302_ReadData(unsigned char addr);

  370. unsigned char Setting_Time[7]={ //bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
  371. 0x15,    //--------十位-------|-------个位--------|年份(当前07年)
  372. 0x03,    //                        |-----个位-----|星期(当前周日)
  373. 0x09,    //              |十位|-------个位--------|月份(当前07月)
  374. 0x23,    //         |--十位---|-------个位--------|日期(当前01号)
  375. 0x9,    //-12H|    |--十位---|-------个位--------|小时(当前18点)
  376. 0x05,    //    |-----十位-----|-------个位--------|分钟(当前20分)
  377. 0x20    //    |-----十位-----|-------个位--------|秒钟(当前30秒)
  378. };
  379. unsigned char ReadingData[7];  //读出来的数据,同SettingData定义与格式

  380. /****************************
  381. void main(void) {
  382. WDTCTL = WDTPW + WDTHOLD;
  383. DS1302_Reset();
  384. //DS1302_SettingData();
  385. while(1){
  386.   DS1302_GetData(ReadingData);
  387.   _NOP();
  388. };
  389. }
  390. ****************************/


  391. //DS1302复位
  392. void DS1302_Reset(void) {
  393. P1DIR |=  DS1302_RST;
  394. P2DIR |= DS1302_SCLK;
  395. DS1302_SCLK_LO;
  396. DS1302_RST_LO;
  397. //delay_us(10);
  398. DS1302_SCLK_HI;
  399. }

  400. //向DS1302写入一个字节
  401. void DS1302_WriteOneByte(unsigned char w_dat) {
  402. unsigned char temp;

  403. DS1302_RST_HI;
  404. DS1302_DIR |= DS1302_SDI;

  405. for(temp=8;temp>0;temp--) {
  406.   DS1302_SDI_LO;
  407.   if(w_dat&BIT0) DS1302_SDI_HI;
  408.   DS1302_SCLK_LO;
  409. //  delay_us(10);
  410.   DS1302_SCLK_HI;
  411. //  delay_us(10);
  412.   w_dat >>=1;
  413. }
  414. }

  415. //从DS1302中读取一个字节
  416. unsigned char DS1302_ReadOneByte(void) {
  417. unsigned char temp,rdata;
  418. rdata = 0x00;

  419. DS1302_RST_HI;
  420. DS1302_DIR &= ~DS1302_SDI;

  421. for(temp=0;temp<8;temp++){rdata >>= 1;//将移位放到前面,否则读不到最高一位
  422.   DS1302_SCLK_HI;
  423. // delay_us(10);
  424.   DS1302_SCLK_LO;
  425. //  delay_us(10);
  426.   if((DS1302_IN&DS1302_SDI)==DS1302_SDI)
  427.    rdata |= BIT7;
  428.   //rdata >>= 1;
  429. }

  430. return(rdata);
  431. }

  432. //向DS1302中写入地址后写入数据
  433. void DS1302_WriteData(unsigned char addr,unsigned char w_dat) {
  434. DS1302_RST_LO;
  435. DS1302_SCLK_LO;
  436. DS1302_RST_HI;

  437. DS1302_WriteOneByte(addr);  //写入地址
  438. DS1302_WriteOneByte(w_dat);  //写入数据

  439. DS1302_SCLK_HI;
  440. DS1302_RST_LO;
  441. }

  442. //向DS1302写入地址后,从DS1302中读取数据
  443. unsigned char DS1302_ReadData(unsigned char addr) {
  444. unsigned char r_dat;
  445. DS1302_RST_LO;
  446. DS1302_SCLK_LO;
  447. DS1302_RST_HI;

  448. DS1302_WriteOneByte(addr);  //写入地址
  449. r_dat = DS1302_ReadOneByte();  //读出数据

  450. DS1302_SCLK_LO;
  451. DS1302_RST_LO;

  452. return(r_dat);
  453. }

  454. //按照SettingData的设置设置DS1302的时间
  455. void DS1302_SettingData(void) {
  456. unsigned char temp;
  457. unsigned char addr = 0x8C;

  458. DS1302_WriteData(0x8E,0x00);  //写入控制命令,禁用写保护

  459. for(temp=0;temp<7;temp++) {
  460.   DS1302_WriteData(addr,Setting_Time[temp]);
  461.   addr -= 2;
  462. }

  463. DS1302_WriteData(0x8E,0x80);  //写入控制命令,启用写保护
  464. }

  465. //读取DS1302时间到ReadingData中
  466. void DS1302_GetData(unsigned char *str) {
  467. unsigned char temp;
  468. unsigned char addr = 0x8D;

  469. for(temp=0;temp<7;temp++) {
  470.   str[temp] = DS1302_ReadData(addr);//年
  471.   addr -= 2;
  472. }
  473. }

  474. void DS1302_GetData_dis()
  475. {
  476. DS1302_GetData(ReadingData);
  477.   LCD_write_shu(0,2,Setting_Time[0]/16);
  478.   LCD_write_shu(1,2,Setting_Time[0]%16);
  479.   LCD_write_shu(2,2,10);
  480.   LCD_write_shu(3,2,Setting_Time[2]/16);
  481.   LCD_write_shu(4,2,Setting_Time[2]%16);
  482.   LCD_write_shu(5,2,10);
  483.   LCD_write_shu(6,2,Setting_Time[3]/16);
  484.   LCD_write_shu(7,2,Setting_Time[3]%16);
  485. //  LCD_write_shu(8,2,10);
  486.   LCD_write_shu(9,2,Setting_Time[1]/16);
  487.   LCD_write_shu(10,2,Setting_Time[1]%16);

  488.   LCD_write_shu(0,4,Setting_Time[4]/16);
  489.   LCD_write_shu(1,4,Setting_Time[4]%16);
  490.   LCD_write_shu(2,4,10);
  491.   LCD_write_shu(3,4,Setting_Time[5]/16);
  492.   LCD_write_shu(4,4,Setting_Time[5]%16);
  493.   LCD_write_shu(5,4,10);  
  494.   LCD_write_shu(6,4,Setting_Time[6]/16);
  495.   LCD_write_shu(7,4,Setting_Time[6]%16);  
  496. }
复制代码




分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:718876 发表于 2020-4-26 22:33 | 只看该作者
大神,你这个好像没有检测的函数啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表