作者共發了74篇帖子。 內容轉換:不轉換▼
 
點擊 回復
2748 122
【记录】每天我学习的内容
一派護法 十九級
52樓 發表于:2018-1-1 22:30
今天晚上给STM32F103C8板子焊了一个4位的数码管,用的是一片74HC595驱动的。晚上测试能正常使用。
一派護法 十九級
53樓 發表于:2018-1-2 22:47
今天下午写了一个数码管动态扫描的程序显示TIM1定时器的计数值,发现接了470Ω电阻的数码管亮度比较暗,打算明天再并联上100Ω的电阻,解决亮度问题
晚上成功实现了USB端点1上收发数据:在维基百科上找到了SCSI命令的表格和PDF手册,在前天的基础上修改程序后成功接收了CBW命令信息,然后发送请求的数据包和CSW状态信息,并收到第二个CBW命令数据包
一派護法 十九級
54樓 發表于:2018-1-3 22:22
经过一天的努力,今天晚上终于把U盘做出来了!
一派護法 十九級
55樓 發表于:2018-1-4 22:44
今天下午研究了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时序没有关系。
一派護法 十九級
56樓 發表于:2018-1-5 21:51
今天下午:
1. 将高级定时器的OSSI OSSR作用表格整理成了Excel文件
2. 在STM32F103ZE电路板上焊上了USB插头座,并通过STM32 CubeMX软件实现了1MB的USB磁盘,数据存储在SRAM中
3. 准备用上128MB的NAND Flash,做一个容量更大的U盘,使用1MB的SRAM作为缓冲区。但目前只写了很少一部分代码
一派護法 十九級
58樓 發表于:2018-1-7 22:25
今天上午修改了一下NAND Flash磁盘程序的block page分布顺序,block逆序,page正序,可以通过USB访问磁盘,但可靠性非常差
下午用NOR Flash实现了USB磁盘,但复制进去的文件很容易出现单个比特位翻转的问题,晚上发现通过修改SRAM和NOR存储器的bus turnaround duration时间,以及在将SRAM的内容写入NOR时建立STM32 SRAM的缓冲区,可以改善这个问题,但不能完全解决问题
一派護法 十九級
60樓 發表于:2018-1-9 23:05
今天下午焊接了一个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标志位的清除
一派護法 十九級
68樓 發表于:2018-1-18 21:51
今天经过一天的努力,终于成功实现了88W8686 WiFi模块数据帧和命令帧的自动重传功能,并且使用最新的lwip2.0.3成功调通了NetBIOS和HTTP服务,采用的是WiFi模块自建带有WEP密码的Ad-hoc热点,电脑来连接的方式。
一派護法 十九級
69樓 發表于:2018-1-19 22:39
今天在新88W8686 wifi程序架构中实现了Scan、ScanSSID和Associate三个命令,并且第一次在STM32单片机上使用了C标准库<stdlib.h>中的malloc函数和free函数,用来在多个命令间传递参数信息,取代了昨天的wifi_temp变量
一派護法 十九級
71樓 發表于:2018-1-21 23:17
今天下午成功用C语言生成了MIC码,实现了第二次握手和第四次握手包的发送。将生成的PTK码发送给wifi模块的固件后,wifi模块可成功收发单播帧,但不能收发广播帧。程序运行过程中发现,只要碰巧路由器给wifi模块发送了数据,wifi模块就可以知道路由器的MAC地址,从而成功实现DHCP分配IP地址和DNS服务器地址,然后实现DNS地址解析并与解析出来的地址建立TCP连接。
晚上试着生成GTK广播密钥但没有成功,打算明天继续研究。
一派護法 十九級
72樓 發表于:2018-1-22 22:08
今天下午先是试着给wifi模块发送Crypto命令解密Msg3,但后来才发现88W8686并不支持这个命令(result=2),所以在网上下载了tiny aes c库,然后复制了网上的aes unwrap代码,终于成功解开了Msg3的data部分并提取出了GTK密钥,现在可以收发广播帧了,电脑也能ping通WiFi模块并访问http服务器了,成功实现了WPA2型加密的路由器的连接。
一派護法 十九級
73樓 發表于:2018-1-23 22:17
今天上午对WiFi.h中的各种宏定义重新分了一下组, 下午试着实现GTK两次握手但没有成功,晚上发现原因是PTK和GTK要一起发给固件,不能只发GTK,最后完美解决了问题。到此WPA2已完全实现。
一派護法 十九級
74樓 發表于:2018-1-24 22:05
今天成功实现了WiFi模块连接WPA2-PSK TKIP加密类型的路由器,涉及到ARC4解密算法以及解密Msg3 key data封包的方法,还有Key Material命令TKIP多出来的两个MIC验证密钥的添加方法(顺序和PRF函数产生的顺序是相反的)
一派護法 十九級
75樓 發表于:2018-1-25 22:30
今天成功实现了WPA-PSK认证类型,加密模式TKIP和AES都可以用。
一派護法 十九級
76樓 發表于:2018-1-26 22:28
今天测试了WiFi模块连接WEP加密方式的路由器,修改了WiFi_SetWEP函数,以及连接ADHOC,创建ADHOC和关联路由器的函数,添加了关联失败自动重试的功能,以及取消关联,退出ADHOC模式的功能。
一派護法 十九級
77樓 發表于:2018-1-27 23:24
今天下午:
1.实现了命令帧的DNLD RDY确认,并根据命令和数据的确认时间,重新配置了一个合适的超时重传时间
2.编写并执行了SNMP_MIB命令,知道了默认情况下每个帧的最大重传次数都是2
3.部分修改了WiFi.h中的一些注释
今天晚上:
用寄存器重新编写了WiFi固件保存到Flash固定区域的程序,并最终将代码发布到了CSDN上。
一派護法 十九級
79樓 發表于:2018-3-7 22:27
今天晚上研究了WPA Information Element (Vendor Specific)的具体结构,写出了EAPOL握手帧Message 2的Key Data创建代码,但没有调试成功。
一派護法 十九級
82樓 發表于:2018-3-11 21:36
今天给wifi程序添加了lowlevel.c的注释,添加了display_time函数,编写了库函数版本的主程序和Flash程序,修复了rx underrun error错误信息不显示的问题。
一派護法 十九級
83樓 發表于:2018-3-12 21:29
今天对wifi 88w8686程序进行了最后检查,发布到了csdn上。
一派護法 十九級
84樓 發表于:2018-3-13 21:06
今天花了一天时间,将淘宝上买的坦克小车拼装好了,知道了电池和马达的连线方法。
一派護法 十九級
86樓 發表于:2018-3-17 20:33
今天实现了分片组合程序,以及Windows根据计算机名获取IP地址的程序。
一派護法 十九級
93樓 發表于:2018-3-23 22:09
今晚给windows窗口程序加上了控制台窗口,并成功使用printf函数打印调试信息。
一派護法 十九級
94樓 發表于:2018-3-24 21:09
今天给单片机摄像头程序添加了临界区保护代码,以及图像列表项溢出处理代码,帧率由每四秒一帧提高到了每两秒一帧。把video start/stop合并成了一个命令。PC窗口程序也加了信号量保护。
一派護法 十九級
96樓 發表于:2018-3-27 21:33
今天下午通过STM32手册得知STM32F1单片机定时器输入捕获的最高频率为36MHz。于是写了一个输出1MHz 50%占空比的PWM波进行测试,用一根杜邦线连接到另一个定时器的输入捕获引脚上,经测试能够正常捕获并触发DMA请求,得到的CCRx结果非常精确。
后来还对88W8686进行了TCP测速,结果为几KB到几十KB/s之间。
一派護法 十九級
97樓 發表于:2018-3-27 21:34
昨天没有做任何事情
一派護法 十九級
98樓 發表于:2018-3-28 21:42
今天晚上用同样的程序测试了卖家给的wifi开发板的驱动程序的TCP发送速度,发现速度也不是很理想,只有几KB/s,有时甚至小于1KB/s。
一派護法 十九級
99樓 發表于:2018-3-30 21:57
今天下午:在收到的PCB板子上焊接了4个排座,并用螺丝固定在了4轮小车上
晚上:1. 分配了星期天准备新画的PCB板上的STM32芯片I/O口
2. 弄懂了IEEE Data Rate的表示方法

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
(快捷鍵:Ctrl+Enter)
 

本帖信息

點擊數:2748 回複數:122
評論數: ?
作者:巨大八爪鱼
最後回復:巨大八爪鱼
最後回復時間:2018-5-27 21:14
 
©2010-2024 Arslanbar Ver2.0
除非另有聲明,本站採用創用CC姓名標示-相同方式分享 3.0 Unported許可協議進行許可。