K_A16_003 基于STM32等单片机采集薄膜压力传感器参数串口与OLED0.96双显示
K_A16_003 基于STM32等單片機采集薄膜壓力傳感器參數串口與OLED0.96雙顯示
- 一、資源說明
- 二、基本參數
- 參數
- 引腳說明
- 三、驅動說明
- 對應程序:
- 四、部分代碼說明
- 1、接線引腳定義
- STM32F103C8T6+薄膜壓力傳感器模塊
- 五、基礎知識學習與相關資料下載
- 六、視頻效果展示與程序資料獲取
- 七、注意事項
- 八、接線說明
- STM32F103C8T6
一、資源說明
| STM32F103C8T6 | 晶振8M/系統時鐘72M | 薄膜壓力傳感器模塊 | STM32F103C8T6驅動薄膜壓力傳感器模塊 串口與OLED0.96雙顯示 |
其他資料目錄 直戳跳轉
二、基本參數
參數
厚度 :0.4mm
樣式 :薄片狀,柔性
觸發力 :20g,默認電阻值小于 200kΩ 時觸發
壓力感應范圍 :20g~6kg
壓力作用方式: 靜態或動態(頻率 10Hz 以 內)
未觸發時電阻 :大于 10M Ω
激活時間 :小于 0.01S
使用溫度 :-40℃~+85℃
耐久性 :100 萬次以上
一致性 :單個產品阻值+/-3%以內,同 批產品+/-10%以內(同等測試 條件下)
遲滯 : +10% , (RF+ - RF-)/FR+ , 1000g 力
響應時間 :<10ms
電磁干擾 :EMI 不產生
靜電釋放 :EDS 不敏感
漂移 :<5%, 2.5Kg力靜載24H
引腳說明
| VCC | 正極 3.3-5V供電 |
| GND | 負極 接GND |
| DO | 數字量輸出(默認低電平輸出 到閥值輸出高電平) |
| AO | 模擬量輸出 |
三、驅動說明
對應程序:
STM32 ADC采集程序:
/*** @brief ADC GPIO 初始化* @param 無* @retval 無*/ static void ADCx_GPIO_Config(void) {GPIO_InitTypeDef GPIO_InitStructure;// 打開 ADC IO端口時鐘ADC_GPIO_APBxClock_FUN ( ADC_GPIO_CLK, ENABLE );// 配置 ADC IO 引腳模式// 必須為模擬輸入GPIO_InitStructure.GPIO_Pin = ADC_PIN;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;// 初始化 ADC IOGPIO_Init(ADC_PORT, &GPIO_InitStructure); }/*** @brief 配置ADC工作模式* @param 無* @retval 無*/ static void ADCx_Mode_Config(void) {ADC_InitTypeDef ADC_InitStructure; // 打開ADC時鐘ADC_APBxClock_FUN ( ADC_CLK, ENABLE );// ADC 模式配置// 只使用一個ADC,屬于獨立模式ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;// 禁止掃描模式,多通道才要,單通道不需要ADC_InitStructure.ADC_ScanConvMode = DISABLE ; // 連續轉換模式ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;// 不用外部觸發轉換,軟件開啟即可ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;// 轉換結果右對齊ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;// 轉換通道1個ADC_InitStructure.ADC_NbrOfChannel = 1; // 初始化ADCADC_Init(ADCx, &ADC_InitStructure);// 配置ADC時鐘為PCLK2的8分頻,即9MHzRCC_ADCCLKConfig(RCC_PCLK2_Div8); // 配置 ADC 通道轉換順序和采樣時間ADC_RegularChannelConfig(ADCx, ADC_CHANNEL, 1, ADC_SampleTime_55Cycles5);// ADC 轉換結束產生中斷,在中斷服務程序中讀取轉換值ADC_ITConfig(ADCx, ADC_IT_EOC, ENABLE);// 開啟ADC ,并開始轉換ADC_Cmd(ADCx, ENABLE);// 初始化ADC 校準寄存器 ADC_ResetCalibration(ADCx);// 等待校準寄存器初始化完成while(ADC_GetResetCalibrationStatus(ADCx));// ADC開始校準ADC_StartCalibration(ADCx);// 等待校準完成while(ADC_GetCalibrationStatus(ADCx));// 由于沒有采用外部觸發,所以使用軟件觸發ADC轉換 ADC_SoftwareStartConvCmd(ADCx, ENABLE); }static void ADC_NVIC_Config(void) {NVIC_InitTypeDef NVIC_InitStructure;// 優先級分組NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);// 配置中斷優先級NVIC_InitStructure.NVIC_IRQChannel = ADC_IRQ; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure); }/*** @brief ADC初始化* @param 無* @retval 無*/ void ADCx_Init(void) {ADCx_GPIO_Config();ADCx_Mode_Config();ADC_NVIC_Config(); }四、部分代碼說明
1、接線引腳定義
需要自定義引腳可在此處更改,STM32要自定義引腳的話也要注意引腳時鐘使能的更改
STM32F103C8T6+薄膜壓力傳感器模塊
//薄膜壓力傳感器模塊引腳定義 GPIOA_0 ADC1通道0 #define ADC_GPIO_APBxClock_FUN RCC_APB2PeriphClockCmd #define ADC_GPIO_CLK RCC_APB2Periph_GPIOA #define ADC_PORT GPIOA #define ADC_PIN GPIO_Pin_0 //OLED0.96模塊引腳定義 //-----------------OLED IIC端口定義---------------- #define OLED_SCLK_Clr() GPIO_ResetBits(GPIOB,GPIO_Pin_8)//SCL #define OLED_SCLK_Set() GPIO_SetBits(GPIOB,GPIO_Pin_8)#define OLED_SDIN_Clr() GPIO_ResetBits(GPIOB,GPIO_Pin_9)//SDA #define OLED_SDIN_Set() GPIO_SetBits(GPIOB,GPIO_Pin_9)五、基礎知識學習與相關資料下載
1、STC89C52RC程序下載 直戳跳轉
2、STM32F103C8T6程序下載
(1)串口下載 直戳跳轉
(2)ST-LINK下載 直戳跳轉
(3)J-LINK下載 直戳跳轉
(4)DAP-LINK下載 直戳跳轉
3、OLED0.96程序說明 直戳跳轉
4、串口助手下載與使用
(1)安信可調試助手使用 直戳跳轉
(2) sscom33串口調試助手使用 直戳跳轉
(3)STC-ISP串口調試助手使用 直戳跳轉
六、視頻效果展示與程序資料獲取
視頻連接 直戳跳轉
資料獲取 ( 滑到最后添加個人號)
七、注意事項
1、VCC GND請勿接反,接反易燒
2、OLED顯示異常時,排除接線接觸不良
八、接線說明
STM32F103C8T6
/************************************************************************************ // 生成日期 : 2021-6-21 // 最近修改 : 2021-11-21 // 功能描述 : 薄膜壓力傳感器模塊測試程序 // 測試條件 : STM32F103C8T6 晶振8M 系統時鐘 72M 接線 薄膜壓力傳感器模塊-----------------------STM32F103C8T6 VCC-------------------------------------3.3V GND-------------------------------------GND AO--------------------------------------PA_0 OLED0.96 VCC-- -----------------------------------3.3V GND- ------------------------------------GND SCL- ------------------------------------PB_8 //SCL SDA- ------------------------------------PB_9 //SDA *****************************************************************************************/總結
以上是生活随笔為你收集整理的K_A16_003 基于STM32等单片机采集薄膜压力传感器参数串口与OLED0.96双显示的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Apache开源列式存储引擎Parque
- 下一篇: C#、python企业微信群机器人自动发