 |
今天晚上給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標誌位的清除
|