【E1164】STM32普通IO口模拟串口通信(自己改的)

2021-09-13 18:47:27      索炜达电子      848     

项目编号:E1164

文件大小:3M

源码说明:带中文注释

开发环境:C编译器

简要概述:

为了方便跟电脑串口连接,io口仍选用PA9与PA10,不过这里只将它们当作变通的IO口使用。PA9对应TXD,PA10对应RXD的功能。串口配置是波特率9600,8位数据位,1位停止位,无校验位。
不过我也有个疑问,因为这个是按照原子哥的串口例程改的,所以结束标志就是收到0x0d,0x0a,这样就必须发字符串的时候发送新行,发16进制数最后要有0x0d,0x0a。我看到我往串口调试助手发送数据,根本就没发固定的结束标志啊,它都能立即接收并显示出来,它是依次接收一个字节就显示一个字节吗?我试了一下,只能正常接收第一个字节后面的都丢了。

目录│文件列表:

 └ 我的模拟串口实验

    │ keilkilll.bat

    ├ CORE

    │  │ core_cm3.c

    │  │ core_cm3.h

    │  └ startup_stm32f10x_hd.s

    ├ HARDWARE

    │  └ LED

    │     │ led.c

    │     └ led.h

    ├ OBJ

    │  │ core_cm3.crf

    │  │ core_cm3.d

    │  │ core_cm3.o

    │  │ delay.crf

    │  │ delay.d

    │  │ delay.o

    │  │ delay.__i

    │  │ ExtDll.iex

    │  │ exti.crf

    │  │ exti.d

    │  │ exti.o

    │  │ exti.__i

    │  │ main.crf

    │  │ main.d

    │  │ main.o

    │  │ misc.crf

    │  │ misc.d

    │  │ misc.o

    │  │ misc.__i

    │  │ startup_stm32f10x_hd.d

    │  │ startup_stm32f10x_hd.o

    │  │ stm32f10x_adc.crf

    │  │ stm32f10x_adc.d

    │  │ stm32f10x_adc.o

    │  │ stm32f10x_adc.__i

    │  │ stm32f10x_bkp.crf

    │  │ stm32f10x_bkp.d

    │  │ stm32f10x_bkp.o

    │  │ stm32f10x_bkp.__i

    │  │ stm32f10x_can.crf

    │  │ stm32f10x_can.d

    │  │ stm32f10x_can.o

    │  │ stm32f10x_can.__i

    │  │ stm32f10x_cec.crf

    │  │ stm32f10x_cec.d

    │  │ stm32f10x_cec.o

    │  │ stm32f10x_cec.__i

    │  │ stm32f10x_crc.crf

    │  │ stm32f10x_crc.d

    │  │ stm32f10x_crc.o

    │  │ stm32f10x_crc.__i

    │  │ stm32f10x_dac.crf

    │  │ stm32f10x_dac.d

    │  │ stm32f10x_dac.o

    │  │ stm32f10x_dac.__i

    │  │ stm32f10x_dbgmcu.crf

    │  │ stm32f10x_dbgmcu.d

    │  │ stm32f10x_dbgmcu.o

    │  │ stm32f10x_dbgmcu.__i

    │  │ stm32f10x_dma.crf

    │  │ stm32f10x_dma.d

    │  │ stm32f10x_dma.o

    │  │ stm32f10x_dma.__i

    │  │ stm32f10x_exti.crf

    │  │ stm32f10x_exti.d

    │  │ stm32f10x_exti.o

    │  │ stm32f10x_exti.__i

    │  │ stm32f10x_flash.crf

    │  │ stm32f10x_flash.d

    │  │ stm32f10x_flash.o

    │  │ stm32f10x_flash.__i

    │  │ stm32f10x_fsmc.crf

    │  │ stm32f10x_fsmc.d

    │  │ stm32f10x_fsmc.o

    │  │ stm32f10x_fsmc.__i

    │  │ stm32f10x_gpio.crf

    │  │ stm32f10x_gpio.d

    │  │ stm32f10x_gpio.o

    │  │ stm32f10x_gpio.__i

    │  │ stm32f10x_i2c.crf

    │  │ stm32f10x_i2c.d

    │  │ stm32f10x_i2c.o

    │  │ stm32f10x_i2c.__i

    │  │ stm32f10x_it.crf

    │  │ stm32f10x_it.d

    │  │ stm32f10x_it.o

    │  │ stm32f10x_iwdg.crf

    │  │ stm32f10x_iwdg.d

    │  │ stm32f10x_iwdg.o

    │  │ stm32f10x_iwdg.__i

    │  │ stm32f10x_pwr.crf

    │  │ stm32f10x_pwr.d

    │  │ stm32f10x_pwr.o

    │  │ stm32f10x_pwr.__i

    │  │ stm32f10x_rcc.crf

    │  │ stm32f10x_rcc.d

    │  │ stm32f10x_rcc.o

    │  │ stm32f10x_rcc.__i

    │  │ stm32f10x_rtc.crf

    │  │ stm32f10x_rtc.d

    │  │ stm32f10x_rtc.o

    │  │ stm32f10x_rtc.__i

    │  │ stm32f10x_sdio.crf

    │  │ stm32f10x_sdio.d

    │  │ stm32f10x_sdio.o

    │  │ stm32f10x_sdio.__i

    │  │ stm32f10x_spi.crf

    │  │ stm32f10x_spi.d

    │  │ stm32f10x_spi.o

    │  │ stm32f10x_spi.__i

    │  │ stm32f10x_tim.crf

    │  │ stm32f10x_tim.d

    │  │ stm32f10x_tim.o

    │  │ stm32f10x_tim.__i

    │  │ stm32f10x_usart.crf

    │  │ stm32f10x_usart.d

    │  │ stm32f10x_usart.o

    │  │ stm32f10x_usart.__i

    │  │ stm32f10x_wwdg.crf

    │  │ stm32f10x_wwdg.d

    │  │ stm32f10x_wwdg.o

    │  │ stm32f10x_wwdg.__i

    │  │ sys.crf

    │  │ sys.d

    │  │ sys.o

    │  │ sys.__i

    │  │ system_stm32f10x.crf

    │  │ system_stm32f10x.d

    │  │ system_stm32f10x.o

    │  │ Template.axf

    │  │ Template.hex

    │  │ Template.htm

    │  │ Template.lnp

    │  │ Template.plg

    │  │ Template.sct

    │  │ Template.tra

    │  │ usart.crf

    │  │ usart.d

    │  │ usart.o

    │  └ usart.__i

    ├ STM32F10x_FWLib

    │  ├ inc

    │  │  │ misc.h

    │  │  │ stm32f10x_adc.h

    │  │  │ stm32f10x_bkp.h

    │  │  │ stm32f10x_can.h

    │  │  │ stm32f10x_cec.h

    │  │  │ stm32f10x_crc.h

    │  │  │ stm32f10x_dac.h

    │  │  │ stm32f10x_dbgmcu.h

    │  │  │ stm32f10x_dma.h

    │  │  │ stm32f10x_exti.h

    │  │  │ stm32f10x_flash.h

    │  │  │ stm32f10x_fsmc.h

    │  │  │ stm32f10x_gpio.h

    │  │  │ stm32f10x_i2c.h

    │  │  │ stm32f10x_iwdg.h

    │  │  │ stm32f10x_pwr.h

    │  │  │ stm32f10x_rcc.h

    │  │  │ stm32f10x_rtc.h

    │  │  │ stm32f10x_sdio.h

    │  │  │ stm32f10x_spi.h

    │  │  │ stm32f10x_tim.h

    │  │  │ stm32f10x_usart.h

    │  │  └ stm32f10x_wwdg.h

    │  └ src

    │     │ misc.c

    │     │ stm32f10x_adc.c

    │     │ stm32f10x_bkp.c

    │     │ stm32f10x_can.c

    │     │ stm32f10x_cec.c

    │     │ stm32f10x_crc.c

    │     │ stm32f10x_dac.c

    │     │ stm32f10x_dbgmcu.c

    │     │ stm32f10x_dma.c

    │     │ stm32f10x_exti.c

    │     │ stm32f10x_flash.c

    │     │ stm32f10x_fsmc.c

    │     │ stm32f10x_gpio.c

    │     │ stm32f10x_i2c.c

    │     │ stm32f10x_iwdg.c

    │     │ stm32f10x_pwr.c

    │     │ stm32f10x_rcc.c

    │     │ stm32f10x_rtc.c

    │     │ stm32f10x_sdio.c

    │     │ stm32f10x_spi.c

    │     │ stm32f10x_tim.c

    │     │ stm32f10x_usart.c

    │     └ stm32f10x_wwdg.c

    ├ SYSTEM

    │  ├ delay

    │  │  │ delay.c

    │  │  └ delay.h

    │  ├ sys

    │  │  │ sys.c

    │  │  └ sys.h

    │  └ usart

    │     │ usart.c

    │     └ usart.h

    └ USER

       │ exti.c

       │ exti.h

       │ JLink Regs CM3.txt

       │ JLinkLog.txt

       │ JLinkSettings.ini

       │ main.c

       │ startup_stm32f10x_hd.lst

       │ stm32f10x.h

       │ stm32f10x_conf.h

       │ stm32f10x_it.c

       │ stm32f10x_it.h

       │ system_stm32f10x.c

       │ system_stm32f10x.h

       │ Template.map

       │ Template.opt.bak

       │ Template.Uv2.bak

       │ Template.uvopt

       │ Template.uvproj

       │ Template_Opt.Bak

       │ Template_Template.dep

       │ Template_uvopt.bak

       └ Template_uvproj.bak

TAGSTM32
  • 4 次
  • 1 分