着急中,盼工作人员答复

请问技术,我用的是msp430f149内部的12位ad,出来的数据是12位的,而usb传输只有8位,我也知道要分两次传输,但就是不知道该怎么写程序,能否给提示一下,还有从AD数据缓存区取数据时,该怎么定义数据类型阿,如果定义char的,那高4位就没了,定义为int/float,那么出来的就是bcd码,郁闷啊,盼恢复

可以定义为int类型的,上传2次 unsigned short int ADC; //ADC数据 CH375_WR_CMD_PORT(CMD_WR_USB_DATA7); //通过端点2上传 delay2us(); CH375_WR_DAT_PORT(2); //写入数据长度 CH375_WR_DAT_PORT(ADC); //写入低8位 CH375_WR_DAT_PORT(ADC>>8); //写入高8位


实际的AD采集芯片,对于8位单片机的话,实际上是通过12个I/O引脚来读取数据,那么,你可以用两个8位的char型数据将12位的数据保存下来,然后按照你的高位和低为组合成一个16位的数据,或者你直接将数据写到372里面去,上位机通信的时候,只需要区分你取到的数据是高位还是低为,如果是高位的话,把高位的前4位屏蔽掉,和低8位数据在组合成你要采集的12位的数据.


只有登录才能回复,可以选择微信账号登录