[讨论] tiva uart 数据输出

weiwei   2015-2-25 13:38 楼主
刚接触tiva版 不会用特此请教
思路:用tiva ADC采样数据 再通过uart3输出。
目的:得到ADC采样数据的txt文件用于其他软件分析。
注:uartcharput只能输出到uart,查资料有说再用vs读取串口输出txt文件,ccs本身
不能输出txt。

下面是我的code能从示波器看到uart3口的输出波形,但我不知道输出的具体是什么
请高手指点
  1. int main(void)
  2. {
  3. //channel 0
  4. uint32_t ui32ADC0Value[8];
  5. volatile uint32_t ui32ADCAvg_PE1;
  6. volatile uint32_t ui32ADCAvg_PE2;
  7. volatile uint32_t ui32ADCValueF_PE1;
  8. volatile uint32_t ui32ADCValueF_PE2;
  9. SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_OSC_MAIN|SYSCTL_XTAL_16MHZ);
  10. //Setup ADC Port PE1, PE2
  11. SysCtlPeripheralEnable(SYSCTL_PERIPH_ADC0);
  12. SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOE);
  13. ////////////////////////////
  14. //Enable UART
  15. SysCtlPeripheralEnable(SYSCTL_PERIPH_UART3);
  16. SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);
  17. // HWREG(GPIO_PORTD_BASE + GPIO_O_LOCK) = GPIO_LOCK_KEY_DD;
  18. // HWREG(GPIO_PORTD_BASE + GPIO_O_CR) = 0x80;

  19. GPIOPinConfigure(GPIO_PC7_U3TX);
  20. GPIOPinTypeUART(GPIO_PORTC_BASE, GPIO_PIN_7);
  21. UARTConfigSetExpClk(UART3_BASE, SysCtlClockGet(), 115200,
  22. (UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE | UART_CONFIG_PAR_NONE));
  23. UARTEnable(UART3_BASE);
  24. while(1){
  25. while(!ADCIntStatus(ADC0_BASE, 0, false))
  26. {
  27. }
  28. ADCSequenceDataGet(ADC0_BASE, 0, ui32ADC0Value);
  29. //channel 0
  30. ui32ADCAvg_PE1 = (ui32ADC0Value[0] + ui32ADC0Value[1] + ui32ADC0Value[2] + ui32ADC0Value[3] + 2)/4;
  31. ui32ADCValueF_PE1 = ((1000*ui32ADCAvg_PE1)-1580)/23/1000;
  32. UARTCharPut(UART3_BASE, ui32ADCValueF_PE1/10000+'0');
  33. UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%10000/1000+'0');
  34. UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%1000/100+'0');
  35. UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%100/10+'0');
  36. UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%10+'0');
  37. //channel 1
  38. ui32ADCAvg_PE2 = (ui32ADC0Value[4] + ui32ADC0Value[5] + ui32ADC0Value[6] + ui32ADC0Value[7] + 2)/4;
  39. ui32ADCValueF_PE2 = ((1000*ui32ADCAvg_PE2)-1580)/23/1000;
  40. UARTCharPut(UART3_BASE, ui32ADCValueF_PE2/10000+'0');//MSD
  41. UARTCharPut(UART3_BASE, ui32ADCValueF_PE2%10000/1000+'0');
  42. UARTCharPut(UART3_BASE, ui32ADCValueF_PE2%1000/100+'0');
  43. UARTCharPut(UART3_BASE, ui32ADCValueF_PE2%100/10+'0');
  44. UARTCharPut(UART3_BASE, ui32ADCValueF_PE2%10+'0');//LSD


问题:①怎样输出采样数据的txt文件?
            ②参考代码
UARTCharPut(UART3_BASE, ui32ADCValueF_PE1/10000+'0');
UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%10000/1000+'0');
UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%1000/100+'0');
UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%100/10+'0');
UARTCharPut(UART3_BASE, ui32ADCValueF_PE1%10+'0');
此段代码的作用是什么?
③有两个ADC的采样数据,该怎么输出?

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复