找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3535|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

深圳奇弦二維碼讀頭單片機程序(一維碼和二維碼均可讀出,暫未編寫讀出數(shù)據(jù)處理程序)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:235200 發(fā)表于 2021-6-1 23:37 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式


單片機源程序如下:
  1. //二維碼讀頭程序
  2. //接線定義:(此例程使用的晶振為11.0592M)
  3. //單片機STC15F2K60S2串口2傳送讀出數(shù)據(jù)
  4. //                VCC--5V
  5. //                RXD--TX/P1.1
  6. //                TXD--RX/P1.0
  7. //                GND--GND

  8. #include <stc15f2k60s2.h>
  9. #include <string.h>

  10. #define u8 unsigned char
  11. #define u16 unsigned int

  12. #define S2RI  0x01          //S2CON.0
  13. #define S2TI  0x02          //S2CON.1
  14. #define S2RB8 0x04          //S2CON.2
  15. #define S2TB8 0x08          //S2CON.3

  16. u8 databuff[50];            //讀出數(shù)據(jù)存放緩沖區(qū)
  17. u8 count;                   //接收字節(jié)計數(shù)器

  18. bit T0_FLAG;                //50ms時間標志

  19. void Timer0Init(void)                //50ms定時@11.0592MHz
  20. {
  21.         AUXR &= 0x7F;                //T0 12T模式
  22.         TMOD &= 0xF0;                //T0方式0
  23.         TL0 = 0x00;                  //50ms
  24.         TH0 = 0x4C;
  25.         TF0 = 0;
  26.         ET0 = 1;        //允許T0中斷
  27. }

  28. //串口2初始化  使用T2作波特率(只能選T2作波特率)
  29. void Uart2_Init(void)
  30. {
  31.   AUXR &= 0xFB;                //波特率不倍速
  32.   S2CON = 0x50;                //8位數(shù)據(jù),允許接收,可變波特率  0101 0000   
  33.   AUXR &= 0xFB;                //獨立波特率發(fā)生器時鐘為Fosc/12,即12T
  34.         T2L = 0xe8;     //波特率9600
  35.         T2H = 0xFF;
  36.   AUXR |= 0x10;                //啟動獨立波特率發(fā)生器
  37.   IE2 = 1;        //允許串口2中斷(即ES2=1)
  38.   EA = 1;
  39. }

  40. //串口2發(fā)送一字節(jié)數(shù)據(jù)
  41. void UART2_SendByte(u8 DAT)
  42. {
  43.   S2BUF = DAT;
  44.   while((S2CON & 0X02) == 0);
  45.   S2CON &= ~0X02;
  46. }

  47. //串口2發(fā)送字符串數(shù)據(jù)
  48. void UART2_SendString(u8 *DAT, u8 len)
  49. {
  50.   u8 i;
  51.   for(i = 0; i < len; i++)
  52.   {
  53.     UART2_SendByte(*DAT++);
  54.   }
  55. }

  56. //串口2接收中斷
  57. void Uart2_Isr() interrupt 8
  58. {
  59.         if (~TR0)
  60.                 TR0=1;                        //啟動T0計時
  61.   if(S2CON & S2RI)
  62.   {
  63.     S2CON &= ~S2RI;
  64.           databuff[count]=S2BUF;        //數(shù)據(jù)保存至緩沖區(qū)
  65.           count++;                      //接收字節(jié)數(shù)
  66.         }
  67. }

  68. void T0INT() interrupt 1
  69. {
  70.          T0_FLAG=1;                     //50ms時間到
  71. }

  72. //讀出二維碼處理
  73. void ERWM_PROC()
  74. {
  75.         //根據(jù)讀出的不同二維碼數(shù)據(jù)進行相應(yīng)的處理
  76.         
  77. }

  78. void  main(void)
  79. {
  80.         Timer0Init();                          //T0初始化
  81.   Uart2_Init();                          //串口2初始化
  82.   while(1)
  83.   {
  84.                 if (T0_FLAG)
  85.                 {
  86.                         TR0=0;                             //禁止定時計數(shù)器
  87.                         IE2 = 0;                           //禁止串口2中斷(即ES2=1)
  88.                         ERWM_PROC();                       //讀出二維碼處理
  89.                         IE2 = 1;                           //允許串口2中斷(即ES2=1)
  90.                         T0_FLAG=0;                         //下一次數(shù)據(jù)讀出處理
  91.                 }
  92.   }
  93. }
復(fù)制代碼

所有資料51hei提供下載:
以上程序: 二維碼讀頭.rar (23.31 KB, 下載次數(shù): 16)
pdf: 二維碼識別QX1100.rar (843.18 KB, 下載次數(shù): 17)

評分

參與人數(shù) 1黑幣 +90 收起 理由
admin + 90 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:444925 發(fā)表于 2021-6-4 09:09 | 只看該作者
GOOD!請問樓主:單獨的這個條形碼模組,請問貴嗎?
回復(fù)

使用道具 舉報

板凳
ID:328014 發(fā)表于 2021-6-7 15:13 | 只看該作者
這個需要走云服務(wù)嗎?
回復(fù)

使用道具 舉報

地板
ID:235200 發(fā)表于 2021-6-7 21:48 | 只看該作者
Kelan 發(fā)表于 2021-6-4 09:09
GOOD!請問樓主:單獨的這個條形碼模組,請問貴嗎?

不是很貴,90元
回復(fù)

使用道具 舉報

5#
ID:235200 發(fā)表于 2021-6-7 21:49 | 只看該作者
51hei團團 發(fā)表于 2021-6-7 15:13
這個需要走云服務(wù)嗎?

不需要,直接讀出編碼,但判斷可以上傳識別碼
回復(fù)

使用道具 舉報

6#
ID:22266 發(fā)表于 2021-7-21 18:46 | 只看該作者
很有用,可以自己diy一些小玩意
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表