ARM波形控制

ARM波形控制

1. 串口设备

1.1 uart协议

ARM波形控制_第1张图片

1.2 uart 串口波形

发送 0xFF 0X00 0X04 0X08数据
串行通信参数设置:BAUD:115200,8位数据,1个停止位,无奇偶校验,发送顺序为低位先发送
ARM波形控制_第2张图片

波形实现方法:
CPU 已实现,仅需设置寄存器
GPIO管脚模拟波形

1.3 例

//发送0x04 数据
void uart_tx(void)
{
   
	GPA1CON = GPA1CON&~0xf<<4)|(0x01<<4);  //设置GPA1_1 GPIO输出模式
	
	//开始位
	GPA1DAT = GPA1DAT&~0x02 ;  //设置GPA1_1 低电平 
	delay10ms();  
	//传数据 0x04   0000 0100
	delay10ms();  //0
	delay10ms();  //0	 
  GPA1DAT = GPA1DAT|0x02 ; //1
  delay10ms();	
	GPA1DAT = GPA1DAT&~0x02 ;  //设置GPA1_1 低电平 
	delay10ms();  	//0
	delay10ms();  	//0	
	delay10ms();  	//0	
	delay10ms();  	//0
	//停止位
  GPA1DAT = GPA1DAT|0x02 ; //1
 	delay10ms();   		
}


void uart_rx(void)
{
   
	  unsigned char output=0;
		GPA1CON = GPA1CON&~0xf);  //设置GPA1_1 GPIO输入模式
    //检测开始位
    while(1)
    {
   
    	 if(GPA1DAT&0x01==0)
    	 	break;
      delay10ms();
    }
    //接收数据
    if(GPA1DAT&0x01==0)  //bit0
    	 	 output=0;
    else
    	   output=1;	 
    if(GPA1DAT&0x01==0)  //bit1  	   
     	 	 output=output&~(0x01<<1);       	   
     else                	    	  
     	   output=output|(0x01<<1);	  

    if(GPA1DAT&0x01==0)  //bit2  	  
     	 	 output=output&~(0x01<<2);  
     else                	    	    
     	   output=output|(0x01<<2);	 
     	   ....
     	    	
	
}

2. I2C 设备

2.1 I2C 协议

ARM波形控制_第3张图片

ARM波形控制_第4张图片
ARM波形控制_第5张图片

ARM波形控制_第6张图片

2.2 I2C 波形

ARM波形控制_第7张图片

3. PWM 蜂鸣器

ARM波形控制_第8张图片

3.1 PWM 蜂鸣器

ARM波形控制_第9张图片
在这里插入图片描述

3.2 配置pwm

3.2.1 设置GPI/O为PWM模式

在这里插入图片描述

你可能感兴趣的:(嵌入式学习,arm,单片机)