|
今天晚上给STM32F103C8板子焊了一个4位的数码管,用的是一片74HC595驱动的。晚上测试能正常使用。
|
|
今天下午写了一个数码管动态扫描的程序显示TIM1定时器的计数值,发现接了470Ω电阻的数码管亮度比较暗,打算明天再并联上100Ω的电阻,解决亮度问题 晚上成功实现了USB端点1上收发数据:在维基百科上找到了SCSI命令的表格和PDF手册,在前天的基础上修改程序后成功接收了CBW命令信息,然后发送请求的数据包和CSW状态信息,并收到第二个CBW命令数据包
|
|
经过一天的努力,今天晚上终于把U盘做出来了!
|
|
今天下午研究了USB磁盘的read10,write10命令STALL的情况,给程序添加了端点0的clear feature - endpoint_halt命令的处理,以及read sense code(CMD03H)的SCSI命令,解决了在“我的电脑”里面弹出磁盘的时候磁盘不消失的bug。简单学习了USB的suspend/resume功能,但暂时没有写到程序里面。最后把最终的USB磁盘代码发到了CSDN和百度网盘上 晚上写了一个GPIO模拟FSMC时序操作K9F1G08U0E NAND Flash存储器的程序,发现仍然有字节漏读的问题,不管怎么延时都没用,这说明是芯片本身的问题,和单片机的FSMC时序没有关系。
|
|
今天下午: 1. 将高级定时器的OSSI OSSR作用表格整理成了Excel文件 2. 在STM32F103ZE电路板上焊上了USB插头座,并通过STM32 CubeMX软件实现了1MB的USB磁盘,数据存储在SRAM中 3. 准备用上128MB的NAND Flash,做一个容量更大的U盘,使用1MB的SRAM作为缓冲区。但目前只写了很少一部分代码
|
|
今天上午修改了一下NAND Flash磁盘程序的block page分布顺序,block逆序,page正序,可以通过USB访问磁盘,但可靠性非常差 下午用NOR Flash实现了USB磁盘,但复制进去的文件很容易出现单个比特位翻转的问题,晚上发现通过修改SRAM和NOR存储器的bus turnaround duration时间,以及在将SRAM的内容写入NOR时建立STM32 SRAM的缓冲区,可以改善这个问题,但不能完全解决问题
|
|
今天下午焊接了一个STM32F107VC芯片和一个DP83848芯片,以及STM32F107VC的电路,通电后能运行程序,ST-Link能正常工作,但Flash loader无法连接,最后在PA9(串口发送端口)上接了一个上拉电阻就解决了问题。
|
|
61樓 巨大八爪鱼
2018-1-10 22:15
今天下午在STM32F107VC板子上焊接了USB OTG的接口,使用PE1,PA11和PA12引脚,成功运行STM32 CubeMX创建的USB大容量存储程序,但插入USB线后经常出现无法识别USB设备的情况,目前不知道是什么原因 接着阅读了TI德州仪器的DP83848I的PDF手册,了解了该芯片各个引脚的功能,MII和RMII接口的连线,以及使用的外围电容、电阻等。 晚上开始在STM32F107VC板子上焊接DP83848和HR911103网口,只焊了一部分,没有焊完,打算明天接着焊
|
|
62樓 巨大八爪鱼
2018-1-11 21:08
今天下午完成了DP83848+HR911103网口电路的焊接,测试了一下之前十一月份写的ETH程序,可以运行。但是有两个问题:第一,上电时串口USART1会乱码;第二,ping经常出现丢包,http服务器经常出现卡死的情况。 晚上成功解决了这两个问题。第一个问题是通过将DP83848芯片的RESET引脚改接到PE2口上,并使用2.2kΩ的下拉电阻将其电平拉低,上电时默认复位信号有效。只有当单片机MCO引脚的时钟输出有效后,才将PE2置为高电平,撤销DP83848的复位信号。这样串口乱码的问题就解决了。 第二个问题可能是之前的程序写的不严谨导致的,换了另一个用库函数写的程序就没有问题了。
DHCP,NetBIOS,DNS,HTTP全部测试通过了,网卡的灯也是正常的(接的都是200Ω的限流电阻,很明亮)。
|
|
66樓 巨大八爪鱼
2018-1-15 23:00
今天下午复习了Windows下的socket编程以及相关的数据结构,接着开始编写88W8686新版架构的WiFi_LowLevel.c函数,晚上实现了固件的下载,以及Download ready中断标志位的清除,以及SDIO_STA_SDIOIT标志位的清除
|