找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机无线智能八路抢答器汇编程序设计+Proteus仿真

[复制链接]
跳转到指定楼层
楼主
2.2  无线系统设计
F05P微功率发射模块采用SMT工艺,小体积,低功耗,适合短距离无线遥控报警以及单片机无线数据传输。J05R是一款超外差接收模块,该模块采用高频无线通信技术,低噪声RF集成芯片,具有极高灵敏度和性价比,可靠性高;是工业控制、通讯、遥控安防、滚动码遥控、电动门控系统以远距离传输等领域的理想选择。
本次设计以F05P、J05R为发射和接收电路,并配以PT2262、PT2272构成发射和接收模块,均能满足设计要求。为了减轻电路制作的负担,遥控所用发射和接收电路均采用成品电路板,将其与相应的编解码芯片和发射接收电路组合起来,构成完整模块。
2.3  控制系统设计
控制器主要用于对显示、抢答、音乐、计分等模块进行控制。本设计对数据处理的速度要求不高,考虑到成本、电路板布线复杂程度等方面的问题,故采用AT89C51作为系统控制器的CPU方案。单片机算术运算功能强、软件编程灵活、自由度大,可以用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和成本低等优点,使其在各个领域应用广泛。因此采用AT89C51作为控制系统的核心。
··························
3.6  protel原理图设计
根据AT89C51的引脚特性,利用protel软件设计了如下电路图,如图9所示。首先要选出所用的器件。在引脚9加+12v电源,整个电路供电;P1口设计为选手的八路按键,P0为数码显示电路连接部分;XTAL部分为时钟电路的接口;RST端口控制复位电路,P3端口连接蜂鸣器音频部分。
{整体部分见附件,课设报告文档以及仿真程序原理图等,第一次发帖,没太懂这个网站的格式,想插入图片插不进去}
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. OK EQU 20H
  2. RING EQU 22H
  3. ORG 0000H
  4. AJMP MAIN
  5. ORG 0003H
  6. AJMP INT00
  7. ORG 000BH
  8. AJMP T00
  9. ORG 0013H
  10. AJMP INT11
  11. ORG 001BH
  12. AJMP T11
  13. ORG 0040H
  14. MAIN:MOV R1,#30
  15. MOV R2,#60
  16.     MOV TMOD,#11H    MOV TH0,#0F0H
  17.     MOV TL0,#0FFH
  18.     MOV TH1,#3CH
  19.     MOV TL1,#0B0H;50ms
  20.     SETB EA
  21. SETB ET0
  22. SETB ET1
  23. SETB EX0
  24. SETB EX1
  25. CLR OK
  26. CLR RING
  27. SETB TR1
  28. SETB TR0
  29. LOOP:MOV R5,#0BH
  30.     MOV R4,#0BH
  31.     MOV R3,#0BH
  32.     ACALL DISPLAY
  33.   JB P3.0,LOOP1
  34.     ACALL DELAY
  35.     JB P3.0,LOOP1
  36.     ACALL BARK
  37.     MOV A,R1
  38.     MOV R6,A
  39.     SETB OK
  40.     MOV R7,#01H
  41.     MOV R3,#0AH
  42.     AJMP COUNT
  43. LOOP1:JNB P1.0,FALSE1
  44.     JNB P1.1,FALSE2
  45.     JNB P1.2,FALSE3
  46.     JNB P1.3,FALSE4
  47.     JNB P1.4,FALSE5
  48.     JNB P1.5,FALSE6
  49.     JNB P1.6,FALSE7
  50.     JNB P1.7,FALSE8
  51.     AJMP LOOP
  52. FALSE1:MOV R3,#01H
  53.     AJMP ERROR
  54. FALSE2:MOV R3,#02H
  55.     AJMP ERROR
  56. FALSE3:MOV R3,#03H
  57.     AJMP ERROR
  58. FALSE4:MOV R3,#04H
  59.     AJMP ERROR
  60. FALSE5:MOV R3,#05H
  61.     AJMP ERROR
  62. FALSE6:MOV R3,#06H
  63.     AJMP ERROR
  64. FALSE7:MOV R3,#07H
  65.     AJMP ERROR
  66. FALSE8:MOV R3,#08H
  67.     AJMP ERROR
  68. ;====中断====
  69. INT00:MOV A,R1
  70.     MOV B,#0AH
  71.     DIV AB
  72.     MOV R5,A
  73.     MOV R4,B
  74.     MOV R3,#0AH
  75.     ACALL DISPLAY
  76.     JNB P3.4,INC0
  77.     JNB P3.5,DEC0
  78.     JNB P3.1,BACK0
  79.     AJMP INT00
  80. INC0:MOV A,R1
  81. CJNE A,#63H,ADD0
  82.     MOV R1,#00H
  83.     ACALL DELAY
  84.     AJMP INT00
  85. ADD0:INC R1
  86.     ACALL DELAY
  87.     AJMP INT00
  88. DEC0:MOV A,R1
  89.     JZ SETT     
  90. DEC R1
  91. ACALL DELAY
  92. AJMP INT00
  93. SETT:MOV R1,#63H
  94.     ACALL DELAY
  95.     AJMP INT00
  96. BACK0:RETI
  97. INT11:MOV A,R2
  98.     MOV B,#0AH
  99.     DIV AB
  100.     MOV R5,A
  101.     MOV R4,B
  102.     MOV R3,#0AH
  103.     ACALL DISPLAY
  104.     JNB P3.4,INC1
  105.     JNB P3.5,DEC1
  106.     JNB P3.1,BACK1
  107.     AJMP INT11
  108. INC1:MOV A,R2
  109.     CJNE A,#63H,ADD1
  110.     MOV R2,#00H
  111.     ACALL DELAY
  112.     AJMP INT11
  113. ADD1:INC R2
  114.     ACALL DELAY
  115.     AJMP INT11
  116. DEC1:MOV A,R2
  117.     JZ SET1
  118.     DEC R2
  119.     ACALL DELAY
  120.     AJMP INT11
  121. SET1:MOV R2,#63H
  122.     ACALL DELAY
  123.     AJMP INT11
  124. BACK1:RETI
  125. REPEAT:MOV A,R2
  126.     MOV R6,A
  127. CLR RING
  128. COUNT:MOV R0,#00H
  129.     MOV TH1,#3CH
  130.     MOV TL1,#0B0H
  131. RECOUNT:MOV A,R6
  132.     MOV B,#0AH
  133.     DIV AB
  134.     MOV 30H,A
  135.     MOV 31H,B
  136.     MOV R5,30H
  137.     MOV R4,31H
  138.     MOV A,R6
  139.     SUBB A,#07H
  140.     JNC MAX
  141.     MOV A,R0
  142.     CJNE A,#0AH,FULL
  143.     CLR RING
  144.     AJMP CHECK
  145. FULL:CJNE A,#14H,CHECK
  146.     SETB RING
  147.     MOV A,R6
  148.     JZ QUIT
  149.     MOV R0,#00H
  150.     DEC R6
  151.     AJMP CHECK
  152. MAX:MOV A,R0
  153. CJNE A,#14H,CHECK
  154. DEC R6
  155. MOV R0,#00H
  156. CHECK:JNB P3.1,QUIT
  157. JNB OK,CHECK1
  158. AJMP NEXT1
  159. CHECK1:JNB P3.0,REPEAT
  160. NEXT1:ACALL DISPLAY
  161. JB OK,ACCOUT
  162. AJMP RECOUNT
  163. ACCOUT:MOV A,36H
  164. JNB ACC.0,TRUE1
  165. JNB ACC.1,TRUE2
  166. JNB ACC.2,TRUE3
  167. JNB ACC.3,TRUE4
  168. JNB ACC.4,TRUE5
  169. JNB ACC.5,TRUE6
  170. JNB ACC.6,TRUE7
  171. JNB ACC.7,TRUE8
  172. AJMP RECOUNT
  173. QUIT:CLR OK
  174. CLR RING
  175. AJMP LOOP
  176. TRUE1:ACALL BARK
  177. MOV A,R2
  178. MOV R6,A
  179. MOV R3,#01H
  180. CLR OK
  181. AJMP COUNT
  182. TRUE2:ACALL BARK
  183. MOV A,R2
  184. MOV R6,A
  185. MOV R3,#02H
  186. CLR OK
  187. AJMP COUNT
  188. TRUE3:ACALL BARK
  189. MOV A,R2
  190. MOV R6,A
  191. MOV R3,#03H
  192. CLR OK
  193. AJMP COUNT
  194. TRUE4:ACALL BARK
  195. MOV A,R2
  196. MOV R6,A
  197. MOV R3,#04H
  198. CLR OK
  199. AJMP COUNT
  200. TRUE5:ACALL BARK
  201. MOV A,R2
  202. MOV R6,A
  203. MOV R3,#05H
  204. CLR OK
  205. AJMP COUNT
  206. TRUE6: ACALL BARK
  207. MOV A,R2
  208. MOV R6,A
  209. MOV R3,#06H
  210. CLR OK
  211. AJMP COUNT
  212. TRUE7:ACALL BARK
  213. MOV A,R2
  214. MOV R6,A
  215. MOV R3,#07H
  216. CLR OK
  217. AJMP COUNT
  218. TRUE8:ACALL BARK
  219. MOV A,R2
  220. MOV R6,A
  221. MOV R3,#08H
  222. CLR OK
  223. AJMP COUNT
  224. ERROR: MOV R0,#00H
  225. MOV TH1,#3CH
  226. MOV TL1,#0B0H
  227. MOV 34H,R3
  228. HERE: MOV A,R0
  229. CJNE A,#06H,FLASH;0.3s
  230. CLR RING
  231. MOV R3,#0AH
  232. MOV R4,#0AH
  233. MOV R5,#0AH;
  234. AJMP CHECK2
  235. FLASH:CJNE A,#0CH,CHECK2
  236. SETB RING
  237. MOV R0,#00H
  238. MOV R3,34H
  239. MOV R5,#0BH
  240. MOV R4,#0BH
  241. AJMP CHECK2
  242. CHECK2: JNB P3.1,QUIT1
  243. ACALL DISPLAY
  244. AJMP HERE
  245. QUIT1:CLR RING
  246. CLR OK
  247. AJMP MAIN
  248. DISPLAY:MOV DPTR,#DAT1
  249. MOV A,R3
  250. MOVC A,@A+DPTR
  251. MOV P2,#0FEH
  252. MOV P0,A
  253. ACALL DELAY2
  254. MOV DPTR,#DAT2
  255. MOV A,R5
  256. MOVC A,@A+DPTR
  257. MOV P2,#0FDH
  258. MOV P0,A
  259. ACALL DELAY2
  260. MOV A,R4
  261. MOVC A,@A+DPTR
  262. MOV P2,#0FBH
  263. MOV P0,A
  264. ACALL DELAY2
  265. RET
  266. DAT1:DB 00H,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H,71H;对应"灭","1","2" ,"3","4","5","6","7","8","9","灭","F"
  267. DAT2:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H,71H;第一个显示"0"
  268. DELAY:MOV 35H,#08H
  269. DELAY3:ACALL DISPLAY
  270. DJNZ 35H,DELAY3
  271. RET
  272. ……………………

  273. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
1503060108 艾营.zip (695.12 KB, 下载次数: 79)



评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

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

使用道具 举报

沙发
ID:870739 发表于 2020-12-30 10:25 | 只看该作者
你好,为什么我下载了没有仿真效果啊?
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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