完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
功能是这样的,用单片机STC12C2052ad 接光敏电阻,然后PWM输出,发光模块那里应该是接P3.7,请问我这个程序对吗
ORG 0000H L0000: LJMP MIN00 ; 主程序 ; / *** *** *** *** / 初始化 PWM PCA00: MOV CMOD, #82H ; (fSYS/2) MOV CCON, #00H MOV CL, #00H MOV CH, #00H MOV CCAPM0, #00H ; PWM0 输出 MOV PCA_PWM0, #00H SETB CR ; 开 PWM RET ; / *** *** *** *** / 主程序 P1M0 EQU 91H P1M1 EQU 92H P3M0 EQU 0B1H P3M1 EQU 0B2H CMOD EQU 0D9H CCON EQU 0D8H CL EQU 0E9H CH EQU 0F9H CCAPM0 EQU 0DAH PCA_PWM0 EQU 0F2H CR EQU 0D8H.6 CCAP0H EQU 0FAH ADC_CONTR EQU 0C5H ; A/D 转换寄存器 ADC_DATA EQU 0C6H ; A/D 结果寄存器 MIN00: MOV P1M0, #08H ; 设置 P1.3 为高阻状态 MOV P1M1, #08H MOV ADC_CONTR, #0E3H ; 开A/D 转换电源 P1.3 LCALL PCA00 ; 初始化 PWM MIN10: NOP ; 主程序 入口 LCALL ADC00 ; 测光敏电阻电压 MOV CCAP0H, A ; 写入PWM 控制 发光亮度 LJMP MIN10 RET ; / *** *** *** *** / A/D 转换通道 测电压 ADC00: MOV ADC_DATA, #00H ORL ADC_CONTR, #08H ; 启动 AD 转换 MOV A, #10H ; 判断 AD 转换是否完成 ANL A, ADC_CONTR JZ $ ; AD 转换尚未完成, 继续等待 ANL ADC_CONTR, #0E7H ; 清0 ADC_FLAG, ADC_START 位, 停止A/D 转换 MOV A, ADC_DATA ; A = AD 转换结果 RET END 不对的话请指出,教教我这个水深火热的菜鸟吧!!
|
|
相关推荐
1个回答
|
|
我也是菜鸟,求大神指点,学习中
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-shell脚本编写之变量
472 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-shell脚本编写之本地脚本的编写和执行
654 浏览 0 评论
【xG24 Matter开发套件试用体验】深入了解Silicon Labs xG24 Matter开发套件
789 浏览 0 评论
702 浏览 0 评论
727 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
10952 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-2 04:16 , Processed in 0.484497 second(s), Total 72, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191