55uint32_t dis_l ,dis_r ,dis_m ;
66uint32_t data_m ,data_l ,data_r ,val ,echo_m ,echo_l ,echo_r ,rx ,jishu ,ji1_m ,ji2_m ,ji1_l ,ji2_l ,ji1_r ,ji2_r ;
77uint32_t icount ,icount_flag ;
8- static DEV_GPIO_PTR PMOD1 ;//超声波
9- static DEV_GPIO_PTR PMOD3_R ;//超声波
8+ static DEV_GPIO_PTR PMOD1 ;
9+ static DEV_GPIO_PTR PMOD3_R ;
1010
1111 void delay (uint32_t z )
1212{
@@ -19,15 +19,15 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
1919{
2020 PMOD1 = gpio_get_dev (DW_GPIO_PORT_A );
2121 PMOD1 -> gpio_open (0xf00 );
22- PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_INPUT , (void * )0x100 );//输入 J1*7/A8 Em
23- PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_OUTPUT , (void * )0x200 );//输出 J1*8/A9 Tm
24- PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_INPUT , (void * )0x400 );//输入 J1*9/A10 El
25- PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_OUTPUT , (void * )0x800 );//输出 J1*10/A11 Tl
22+ PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_INPUT , (void * )0x100 );
23+ PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_OUTPUT , (void * )0x200 );
24+ PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_INPUT , (void * )0x400 );
25+ PMOD1 -> gpio_control (GPIO_CMD_SET_BIT_DIR_OUTPUT , (void * )0x800 );
2626
2727 PMOD3_R = gpio_get_dev (DW_GPIO_PORT_D );
2828 PMOD3_R -> gpio_open (0x30 );
29- PMOD3_R -> gpio_control (GPIO_CMD_SET_BIT_DIR_INPUT , (void * )0x10 );//输入 J3*1/C16 ER
30- PMOD3_R -> gpio_control (GPIO_CMD_SET_BIT_DIR_OUTPUT , (void * )0x20 );//输出 J3*2/C17 TR
29+ PMOD3_R -> gpio_control (GPIO_CMD_SET_BIT_DIR_INPUT , (void * )0x10 );
30+ PMOD3_R -> gpio_control (GPIO_CMD_SET_BIT_DIR_OUTPUT , (void * )0x20 );
3131}
3232
3333
@@ -36,8 +36,8 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
3636 // timer_stop(INTNO_TIMER1);
3737
3838 PMOD1 -> gpio_read (& data_m , 0x800 );
39- PMOD1 -> gpio_write (0x800 , 0x800 );//输出高电平
40- PMOD1 -> gpio_read (& data_m , 0x800 );//读高电平
39+ PMOD1 -> gpio_write (0x800 , 0x800 );
40+ PMOD1 -> gpio_read (& data_m , 0x800 );
4141 delay (20 );
4242 PMOD1 -> gpio_read (& data_m , 0x800 );
4343 PMOD1 -> gpio_write (0x000 , 0x800 );
@@ -49,7 +49,7 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
4949 {
5050 PMOD1 -> gpio_read (& echo_m ,0x400 );
5151 icount ++ ;
52- if (icount > 400000 )//可以不用这么大的数值。3米对应的值就可以
52+ if (icount > 400000 )
5353 {
5454 icount_flag = 1 ;
5555 break ;
@@ -66,7 +66,7 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
6666 if (icount_flag == 0 )
6767 {
6868 dis_m = ji2_m * 0.00085 ;
69- EMBARC_PRINTF ("dis_m:%d\n" , dis_m );//检验
69+ EMBARC_PRINTF ("dis_m:%d\n" , dis_m );
7070 }
7171 return dis_m ;
7272}
@@ -75,19 +75,19 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
7575{
7676 // timer_stop(INTNO_TIMER1);
7777 PMOD1 -> gpio_read (& data_l , 0x200 );
78- PMOD1 -> gpio_write (0x200 , 0x200 );//输出高电平
79- PMOD1 -> gpio_read (& data_l , 0x200 );//读高电平
78+ PMOD1 -> gpio_write (0x200 , 0x200 );
79+ PMOD1 -> gpio_read (& data_l , 0x200 );
8080 delay (20 );
8181 PMOD1 -> gpio_read (& data_l , 0x200 );
82- PMOD1 -> gpio_write (0x000 , 0x200 );//输出高电平
83- PMOD1 -> gpio_read (& data_l , 0x200 );//读高电平
82+ PMOD1 -> gpio_write (0x000 , 0x200 );
83+ PMOD1 -> gpio_read (& data_l , 0x200 );
8484 delay (30 );
8585 icount = 0 ;icount_flag = 0 ;
8686 while (!(echo_l == 0x100 ))
8787 {
8888 PMOD1 -> gpio_read (& echo_l ,0x100 );
8989 icount ++ ;
90- if (icount > 400000 )//可以不用这么大的数值。3米对应的值就可以
90+ if (icount > 400000 )
9191 {
9292 icount_flag = 1 ;
9393 break ;
@@ -98,14 +98,14 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
9898 while (!(echo_l == 0x000 ))
9999 {
100100 PMOD1 -> gpio_read (& echo_l ,0x100 );
101- //EMBARC_PRINTF("echo:%d\n", echo_l);//检验
101+ //EMBARC_PRINTF("echo:%d\n", echo_l);
102102 }
103103 timer_current (TIMER_1 , & ji2_l );
104104 ji2_l = ji2_l - ji1_l ;
105105 if (icount_flag == 0 )
106106 {
107107 dis_l = ji2_l * 0.00085 ;
108- EMBARC_PRINTF ("dis_l:%d\n" , dis_l );//检验
108+ EMBARC_PRINTF ("dis_l:%d\n" , dis_l );
109109 }
110110 return dis_l ;
111111}
@@ -114,8 +114,8 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
114114{
115115 // timer_stop(INTNO_TIMER1);
116116 PMOD3_R -> gpio_read (& data_r , 0x20 );
117- PMOD3_R -> gpio_write (0x20 , 0x20 );//输出高电平
118- PMOD3_R -> gpio_read (& data_r , 0x20 );//读高电平
117+ PMOD3_R -> gpio_write (0x20 , 0x20 );
118+ PMOD3_R -> gpio_read (& data_r , 0x20 );
119119 delay (20 );
120120 PMOD3_R -> gpio_read (& data_r , 0x20 );
121121 PMOD3_R -> gpio_write (0x00 , 0x20 );
@@ -126,7 +126,7 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
126126 {
127127 PMOD3_R -> gpio_read (& echo_r ,0x10 );
128128 icount ++ ;
129- if (icount > 400000 )//可以不用这么大的数值。3米对应的值就可以
129+ if (icount > 400000 )
130130 {
131131 icount_flag = 1 ;
132132 break ;
@@ -143,7 +143,7 @@ static DEV_GPIO_PTR PMOD3_R;//超声波
143143 if (icount_flag == 0 )
144144 {
145145 dis_r = ji2_r * 0.00085 ;
146- EMBARC_PRINTF ("dis_r:%d\n" , dis_r );//检验
146+ EMBARC_PRINTF ("dis_r:%d\n" , dis_r );
147147 }
148148 return dis_r ;
149149}
0 commit comments