|
顯示模塊:1602 液晶顯示
供電方式: USB
輸入方式:拉力 霍爾傳感器
輸出方式:顯示屏 WIFI電腦PC上位機(jī)
控制芯片:STM32F103RCT6
功能說明:
1、按鍵可以控制電機(jī)的轉(zhuǎn)動(dòng),通過霍爾傳感器檢測(cè)直流電機(jī)的轉(zhuǎn)速,并顯示出來
2、拉力檢測(cè),可以檢測(cè)受力,同時(shí)顯示屏顯示數(shù)據(jù)。
3、電腦連接ESP8266wifi,可以接收數(shù)據(jù)。
顯示
u8 one[]=" V=0000rad/min"; //第一行顯示轉(zhuǎn)速
u8 two[]=" F=00000 "; //第二行顯示拉力
PC接收數(shù)據(jù)
u8 send[]="V=0000 F=00000\r\n";//發(fā)送數(shù)組
制作出來的實(shí)物圖如下:
實(shí)物.JPG (66.45 KB, 下載次數(shù): 76)
下載附件
2019-8-20 16:42 上傳
電路原理圖如下:
0.png (126.33 KB, 下載次數(shù): 82)
下載附件
2019-8-21 03:39 上傳
單片機(jī)源程序如下:
- #include "sys.h"
- #include "usart.h"
- #include "delay.h"
- #include "led.h"
- #include "1602.h"
- #include "hx711.h"
- #include "exti.h"
- #include "timer.h"
- unsigned int k;
- unsigned long HX711_Buffer = 0;
- unsigned long Weight_Maopi = 0,Weight_Shiwu = 0;
- u8 one[]=" V=0000rad/min"; //第一行顯示
- u8 two[]=" F=00000 "; //第二行顯示
- unsigned int pul=0,speed=0;
- int sendflag=0;
- u8 send[]="V=0000 F=00000\r\n";//發(fā)送數(shù)組
- void program() //循環(huán)體
- {
- HX711_Buffer = Read_HX711(); //檢測(cè)拉力
- HX711_Buffer = HX711_Buffer/100;
- if(HX711_Buffer > Weight_Maopi) //防止反向值
- {
- Weight_Shiwu = HX711_Buffer;
- Weight_Shiwu = Weight_Shiwu - Weight_Maopi; //獲取實(shí)物的AD采樣數(shù)值
- }else//反向受力則拉力為0
- {
- Weight_Shiwu=0;
- }
-
- two[5]=Weight_Shiwu/10000+'0'; //顯示拉力數(shù)值
- two[6]=Weight_Shiwu%10000/1000+'0';
- two[7]=Weight_Shiwu%1000/100+'0';
- two[8]=Weight_Shiwu%100/10+'0';
- two[9]=Weight_Shiwu%10+'0';
-
- one[5]=speed/1000+'0';//顯示速度值
- one[6]=speed%1000/100+'0';
- one[7]=speed%100/10+'0';
- one[8]=speed%10+'0';
-
- LCD_Write_String(0,0,one); //顯示第一行
- LCD_Write_String(0,1,two); //顯示第二行
-
- if(sendflag>=6) //定時(shí)發(fā)送數(shù)據(jù)給電腦
- {
- sendflag=0;
- send[2]=one[5]; send[3]=one[6]; send[4]=one[7]; send[5]=one[8];
- send[9]=two[5];send[10]=two[6];send[11]=two[7];send[12]=two[8];send[13]=two[9];
- printf("AT+CIPSEND=0,15\r\n");
- delay_ms(100);
- printf(send);
- delay_ms(300);
-
- }
-
-
- }
- int main(void)
- {
- u8 i=0;
- Stm32_Clock_Init(9); //系統(tǒng)時(shí)鐘設(shè)置
- uart_init(72,9600); //串口初始化為9600
- TIM3_Int_Init(5000,7199);//10Khz的計(jì)數(shù)頻率,計(jì)數(shù)到5000為500ms
- delay_init(72); //延時(shí)初始化
- LED_Init(); //初始化與LED連接的硬件接口
- LCD1602_Init(); //液晶顯示初始化
- delay_ms(500);
- HX711_Init(); //受力傳感器
- EXTI_Init(); //外部中斷
- LCD_Write_String(0,0,one); //顯示第一行
- LCD_Write_String(0,1,two); //顯示第二行
-
-
- HX711_Buffer = Read_HX711();
- Weight_Maopi = HX711_Buffer/100; //先檢測(cè)初始化受力
-
- delay_ms(1000); //延時(shí)
- printf("AT+CIPMUX=1\r\n"); //配置多連接的模式
- delay_ms(800); //延時(shí)
- printf("AT+CIPSERVER=1,8080\r\n"); //配置端口號(hào)
- delay_ms(800);
- while(1)
- {
-
- program(); //程序
-
- delay_ms(10); //程序執(zhí)行提示
- i++;
- if(i%5==0)
- {
- LED0=!LED0;
- }
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
資料包.7z
(659.7 KB, 下載次數(shù): 96)
2019-8-21 03:40 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|