共2条
1/1 1 跳转至页
ADC12 刘工:请帮助ADC12转换问题
问
#include "MSP430x13x.h"
;单通道单次转换
; MSP430F135
; ---------------
; | |
; | A0 (P6.0)|<---- Vin
; | |
;------------------------------------------------------------
main ORG 0c000H ; Program Start
;------------------------------------------------------------
RESET
mov #0A00h,SP ; Initialize stackpointer
StopWDT
mov #WDTPW+WDTHOLD,&WDTCTL ; Stop watchdog
bis.b #BIT0,&P6SEL ; Enable A/D channel A0
SetupADC12
mov #ADC12ON+SHT0_2,&ADC12CTL0
mov #SHP,&ADC12CTL1 ; Use sampling timer
bis #ENC,&ADC12CTL0 ; Enable conversions
Mainloop
bis #ADC12SC,&ADC12CTL0 ; Start conversions
testIFG
bit #BIT0,&ADC12IFG ; Conversion done?
jz testIFG ; No, test again
mov &ADC12MEM0,R5 ; Move result
jmp Mainloop ; SET BREAKPOINT HERE
;-------------------------------------------------------------------
; Interrupt Vectors
;-------------------------------------------------------------------
ORG 0FFFEh ; MSP430 RESET Vector
DW RESET ;
END
;这个程序是用A0输入的.我想用A1输入,怎样改,我试了多次都不行.请帮帮我! 答 1: bis.b #BIT1,&P6SEL ; Enable A/D channel A1
mov.b #INCH_1,&ADC12MCTL0; 答 2: 楼上的兄台:谢谢了!
我试了两天,应该是:ADC12CTL1=CONSEQ_0+SHP+CSTARTADD_1
ADC12MCTL1=INCH_1
这样才能选A1做AD通道. 答 3: 引用: 答 4: 样例中找一下。 答 5: 引用:
;单通道单次转换
; MSP430F135
; ---------------
; | |
; | A0 (P6.0)|<---- Vin
; | |
;------------------------------------------------------------
main ORG 0c000H ; Program Start
;------------------------------------------------------------
RESET
mov #0A00h,SP ; Initialize stackpointer
StopWDT
mov #WDTPW+WDTHOLD,&WDTCTL ; Stop watchdog
bis.b #BIT0,&P6SEL ; Enable A/D channel A0
SetupADC12
mov #ADC12ON+SHT0_2,&ADC12CTL0
mov #SHP,&ADC12CTL1 ; Use sampling timer
bis #ENC,&ADC12CTL0 ; Enable conversions
Mainloop
bis #ADC12SC,&ADC12CTL0 ; Start conversions
testIFG
bit #BIT0,&ADC12IFG ; Conversion done?
jz testIFG ; No, test again
mov &ADC12MEM0,R5 ; Move result
jmp Mainloop ; SET BREAKPOINT HERE
;-------------------------------------------------------------------
; Interrupt Vectors
;-------------------------------------------------------------------
ORG 0FFFEh ; MSP430 RESET Vector
DW RESET ;
END
;这个程序是用A0输入的.我想用A1输入,怎样改,我试了多次都不行.请帮帮我! 答 1: bis.b #BIT1,&P6SEL ; Enable A/D channel A1
mov.b #INCH_1,&ADC12MCTL0; 答 2: 楼上的兄台:谢谢了!
我试了两天,应该是:ADC12CTL1=CONSEQ_0+SHP+CSTARTADD_1
ADC12MCTL1=INCH_1
这样才能选A1做AD通道. 答 3: 引用: 答 4: 样例中找一下。 答 5: 引用:
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 设备功耗web监控界面(ESP32C5)被打赏¥28元 | |
| OrangePiZero2W系统被打赏¥33元 | |
| Linux环境下以模拟方式快速实现出入管理功能测试被打赏¥24元 | |
| 树莓派3+Klipper,老3D打印机满血升级被打赏¥33元 | |
| OK1126B-S开发板下串口屏及其应用被打赏¥21元 | |
| 低功耗超声波液位测距仪(ESP32S3)被打赏¥27元 | |
| 在K230DBOX上实现多时段语音提示功能被打赏¥14元 | |
| 使K230DBOX实现相机持续拍照功能被打赏¥12元 | |
| 基于K230DBOX的文本管理器设计被打赏¥14元 | |
| 基于K230DBOX的彩色画板功能实现被打赏¥15元 | |
我要赚赏金
