如何解决如何在 PIC16F1829 上使用所需的值退出查找表指令
我有一个工作代码,它使用 p16f1829 在 2 个 LED 显示器上显示两位数字。但是,当我尝试包含一个收集 ADC 转换结果以显示在 LED 显示屏上的代码块时出现问题(见下文)。
struct Animal *to_allocate,array[];
更准确地说,它似乎发生在我试图从查找表中获取相应值的时候(见下文):
该指令后 W-reg 中的结果应为 0x7D。但是,它退出查找表而不返回预期值。
没有 ADC 模块的原始工作代码如下:
A2D:
; Start the ADC
nop ; Requried ADC delay of 8uS => (1/(Fosc/4)) = (1/(500KHz/4)) = 8uS
BANKSEL ADCON0 ; Selects memory bank containing ADCON0 register
BSF ADCON0,GO ; Start the ADC
BTFSC ADCON0,GO ; This bit will be cleared when the conversion is complete
GOTO $-1 ; Keep checking the above line until GO bit is clear
; Grab Results and write to the LEDs
SWAPF ADRESH,w ; Get the top 4 MSbs (remember that the ADC result is LEFT justified!)
MOVWF L0
RETURN
我尝试了各种方法,目前对如何进行有一个心理障碍。任何人都可以提供的任何见解将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。