基于STM32--无线字幕滑动广告牌设计+播报功能

(1)硬件准备

wifi模块、STM32F1主控板、oled显示屏、语音模块等。

(2)软件准备

keil5、字模生成工具、wifi调试软件。

(3)代码设计(文中只列出部分代码)
1> wifi代码设计

void Esp8266_Server_Init()
{	
//		 //等待启动成功 发送数据  收到数据
//		USRT_Send_ATCmd2("Ready");           //查询
		USRT_Send_ATCmd("AT\r\n","OK");      //就绪
		USRT_Send_ATCmd("AT+CIPMUX=1\r\n","OK");    //设置多链接模式
		USRT_Send_ATCmd("AT+CWMODE=3\r\n","OK")  ; //设置STATION模式 (AP+STATION)模式 首次设定后面就不用设置了
//		USRT_Send_ATCmd((char*)SetCIPMODE,"OK");    //设置透传模式
		USRT_Send_ATCmd("AT+CIPSERVER=1,8888\r\n","OK");//开启TCP主机模式	
	    USRT_Send_ATCmd("AT+CIPSEND=?","OK");//开启TCP主机模式	
	//  USRT_Send_ATCmd("AT+CIPSEND=0,20\r\naaa","OK");//开启TCP主机模式	
}	

2> oled显示屏代码设计
3> 串口代码设计

void recive_number(u8 number)    
{
	  
		static u8 Start_mode = 0;//模式选择
		static u8 rxd_Count_mode = 0;		
    if(rxd =='+')//模式选择
		 {
			 memset(accept_State, 0, length); 
		   rxd_Count_mode = 0;
		   Start_mode  = 1;
	   }		 
//----------------------
		if(Start_mode == 1)  
		{ 
		  accept_State[rxd_Count_mode++] = rxd;
			if(rxd_Count_mode==100)
			{ 
			  Start_mode=0;
				rxd_Count_mode=0;
			}
   }
		
}
char *Chinese(int table[],char length,char str[])      
{
    int i = 0;
    int data1[1];
    char data2[100];
    data1[0] = (table[i + 1] << 8)|table[i];
    sprintf(data2,"%s",data1);
    strcpy(str,data2);                               
    for(i = 2;i < length; i = i + 2)
    {
        data1[0] = (table[i + 1] << 8)|table[i]; 
        sprintf(data2,"%s",data1);
        strcat(str,data2);
    }
    return str;
}

void gbk_chinese(char accept_State[],int r_inform[],int length)
{
   int i=0;
	if(panduan(accept_State)<10)
	{
	  for(i=9;i<length;i++)
	  {
	    r_inform[i-9]=accept_State[i];
	  }
  }
	else {
	        for(i=10;i<length;i++)
	      {
	          r_inform[i-10]=accept_State[i];
	         }
	
	   }
}
int length2_(int r_inform[])
{
   int i=0,length=0;
	for(i=0;r_inform[i]!=0;i++)
	   length++;
	return length;
}

4> 语音播报模块程序设计。
5>主函数程序设计。

注:需要完整工程代码,关注并私信!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值