久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
STM32ADS1256采集源代碼8通道24位
[打印本頁]
作者:
363749262dc
時間:
2017-7-5 16:30
標題:
STM32ADS1256采集源代碼8通道24位
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "key.h"
#include "usart.h"
#include "exti.h"
#include "wdg.h"
#include "timer.h"
#include "stmflash.h"
#include "usb_lib.h"
#include "math.h"
#include "hw_config.h"
#include "string.h"
#include "stdlib.h"
#include "lcd.h"
#include "task_manage.h"
#include "bsp_ads1256.h"
int main(void)
{
int32_t adc[8];
int32_t volt[8];
uint8_t i;
uint8_t ch_num;
char infoBackPC[64];
char infoShowLCD[64];
SystemInit();
delay_init(72); //延時初始化
NVIC_Configuration();
uart_init(256000); //串口初始化
key_init();//按鍵初始化
initial_lcd();//液晶初始化
LCD_Clear();
LCD_Refresh_Gram();
LCD_Show_CEStr(0,0,"ADS1256");//黑色
LCD_Refresh_Gram();
USBRelinkConfig();
delay_ms(100); /* 等待上電穩定,等基準電壓電路穩定, bsp_InitADS1256() 內部會進行自校準 */
bsp_InitADS1256(); /* 初始化配置ADS1256. PGA=1, DRATE=30KSPS, BUFEN=1, 輸入正負5V */
/* 打印芯片ID (通過讀ID可以判斷硬件接口是否正常) , 正常時狀態寄存器的高4bit = 3 */
{
uint8_t id;
id = ADS1256_ReadChipID();
USB_SendStr("\r\n");
USB_SendStr("讀取芯片ID\r\n");
if (id != 3)
{
sprintf(infoBackPC, "Error, ASD1256 Chip ID = 0x%X\r\n", id);
}
else
{
sprintf(infoBackPC, "Ok, ASD1256 Chip ID = 0x%X\r\n", id);
}
USB_TxWrite((uint8_t*)infoBackPC, strlen(infoBackPC));
}
/* 設置PGA增益,數據更新速率 */
#if 1
USB_SendStr("\r\nPGA增益 = 1, 數據輸出速率 = 15sps, 單端8路掃描\r\n\r\n");
ADS1256_CfgADC(ADS1256_GAIN_1, ADS1256_15SPS); /* 配置ADC參數: 增益1:1, 數據輸出速率 15Hz */
/*
中斷服務程序會自動讀取ADC結果保存在全局變量,主程序通過 ADS1256_GetAdc() 函數來讀取這些數據
*/
ADS1256_StartScan(0); /* 啟動中斷掃描模式. 0表示單端8路,1表示差分4路 */
ch_num = 8; /* 通道數 = 8 或者4 */
#else
USB_SendStr("\r\nPGA增益 = 1, 數據輸出速率 = 15sps, 差分4路掃描\r\n\r\n");
ADS1256_CfgADC(ADS1256_GAIN_1, ADS1256_15SPS); /* 配置ADC參數: 增益1:1, 數據輸出速率 15Hz */
/*
中斷服務程序會自動讀取ADC結果保存在全局變量,主程序通過 ADS1256_GetAdc() 函數來讀取這些數據
*/
ADS1256_StartScan(1); /* 啟動中斷掃描模式. 0表示單端8路,1表示差分4路 */
ch_num = 4; /* 通道數 = 8 或者4 */
#endif
while(1)
{
for (i = 0; i < ch_num; i++)
{
/* 從全局緩沖區讀取采樣結果。 采樣結果是在中斷服務程序中讀取的。*/
adc[i] = ADS1256_GetAdc(i);
/* 4194303 = 2.5V , 這是理論值,實際可以根據2.5V基準的實際值進行公式矯正 */
volt[i] = ((int64_t)adc[i] * 2500000) / 4194303; /* 計算實際電壓值(近似估算的),如需準確,請進行校準 */
}
if(upToPC)
/* 打印采集數據 */
{
int32_t iTemp;
upToPC = 0;
sprintf(infoBackPC, "[%dCH_NUM]\r\n", ch_num);USB_TxWrite((uint8_t*)infoBackPC, strlen(infoBackPC));
for (i = 0; i < ch_num; i++)
{
iTemp = volt[i]; /* 余數,uV */
if (iTemp < 0)
{
iTemp = -iTemp;
sprintf(infoBackPC, "%d=%6d,(-%d.%03d %03d V) \r\n", i, adc[i], iTemp /1000000, (iTemp%1000000)/1000, iTemp%1000);
}
else
{
sprintf(infoBackPC,"%d=%6d,( %d.%03d %03d V) \r\n", i, adc[i], iTemp/1000000, (iTemp%1000000)/1000, iTemp%1000);
}
USB_TxWrite((uint8_t*)infoBackPC, strlen(infoBackPC));
}
//在液晶均顯示8通道電壓,單位0.1mv
for(i = 0; i < 4; i++)
{
sprintf(infoShowLCD, "CH%d", i*2);
LCD_ShowString(1,0 , i*16, (const u8*)infoShowLCD);
LCD_Refresh_Gram();
sprintf(infoShowLCD, "%05d", volt[i*2]/100);
LCD_ShowString(0,24 , i*16, (const u8*)infoShowLCD);
LCD_Refresh_Gram();
sprintf(infoShowLCD, "CH%d", i*2+1);
LCD_ShowString(1,64 , i*16, (const u8*)infoShowLCD);
LCD_Refresh_Gram();
sprintf(infoShowLCD, "%05d", volt[i*2+1]/100);
LCD_ShowString(0,88 , i*16, (const u8*)infoShowLCD);
LCD_Refresh_Gram();
}
LCD_Refresh_Gram();
}
}
}
8通道AD轉換stm32.zip
2017-7-5 16:28 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
434.14 KB, 下載次數: 102, 下載積分: 黑幣 -5
作者:
娃娃魚翅膀
時間:
2017-7-14 16:53
看看行不行先
作者:
小傻逼
時間:
2019-7-13 10:51
定義了infoShowLCD,之后就可以直接用了????
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
日韩在线
|
国产一区二区三区免费播放
|
一级片观看
|
成人在线视频免费观看
|
成人午夜毛片
|
青青青草视频在线观看
|
四虎av
|
天天干天天操天天干
|
日韩网站在线观看
|
欧美一区二区在线视频
|
综合色在线
|
av片在线观看
|
亚洲一区二区久久
|
婷婷色综合
|
亚洲 欧美 综合
|
国产一区二区视频在线播放
|
在线免费观看黄色片
|
日日干日日射
|
一区二区三区在线观看免费
|
天天综合天天做天天综合
|
国产精品视频久久
|
成人黄性视频
|
成人午夜小视频
|
国产日韩欧美综合
|
98在线视频
|
黑人精品一区二区
|
欧美91视频
|
亚洲做受高潮无遮挡
|
久久伊人精品
|
在线视频日本
|
又色又爽又黄gif动态图
|
精品国产视频
|
久久久精品一区二区
|
www.黄色网
|
婷婷久久久
|
一区视频
|
日本a v在线播放
|
欧美不卡一区二区三区
|
久草成人
|
91伊人
|
久久精品一区二区三区不卡牛牛
|