討論區快速選單
知識庫快速選單
程式設計俱樂部Facebook粉絲團 CSSLP認證,將資安落實在軟體開發中 軟實力課程1+1,第二科享5折優惠
[ 回上頁 ] [ 討論區發言規則 ]
用cortex m3 的UART傳送圖檔到另一塊cortex m3 接收並印在電腦上?
更改我的閱讀文章字型大小
作者 : m10313225(葉老二)
[ 貼文 8 | 人氣 0 | 評價 0 | 評價/貼文 0 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2015/12/11 下午 03:12:50
如標題,想請問各位程式高手,
用UART可以傳字元字串等等,但是如果說,
今天我想利用UART TX傳送一個圖片檔(ex.jpg png等等)到另一塊板子的UART RX做接收,
有辦法實作嗎?
因為cortex m3是寫C code,目前小弟想法是利用 file=fopen("XXX.png","rb");
這函式將圖檔用二進制檔開啟讀取再寫到一個新的file2=fopen("XXX.bin","wb");檔案中,
然後用UART將XXX.bin檔的資料傳送到RX接收,接收後再將bin檔轉為png檔開啟圖片,
不知道這樣是否可行,小弟有個疑問,
bin檔案是二進制檔,所以他應該就是只有邏輯1跟邏輯0的資料吧?可以用UART傳出?
不知這想法是不是對的,因為我用文字檔開啟都會變亂碼的說..
請求各位程式前輩們給小弟指教指教,非常感激不盡~~~~:)
作者 : ice_emissary(燃燒的大地) 貼文超過200則
[ 貼文 343 | 人氣 0 | 評價 1650 | 評價/貼文 4.81 | 送出評價 16 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人m10313225註記此篇回應為很有道理 2015/12/11 下午 03:35:32
>如標題,想請問各位程式高手,
>用UART可以傳字元字串等等,但是如果說,
>今天我想利用UART TX傳送一個圖片檔(ex.jpg png等等)到另一塊板子的UART RX做接收,
>有辦法實作嗎?

只要你目標裝置的儲存空間要夠大、可以傳送不含 parity 的位元組資料,就可以。

>因為cortex m3是寫C code,目前小弟想法是利用 file=fopen('XXX.png','rb');
>這函式將圖檔用二進制檔開啟讀取再寫到一個新的file2=fopen('XXX.bin','wb');檔案中,
>然後用UART將XXX.bin檔的資料傳送到RX接收,接收後再將bin檔轉為png檔開啟圖片,

多此一舉,png 檔難道就不是二進位檔案嗎?在你的做法中,兩個檔案唯一不同只有副檔名不一樣而已。
事實上 png 檔打開後就可以直接傳送了!
而接收端收到的就是 png 檔的資料,直接可以拿來使用。

然而在收送檔案前,請先確認:
1. 雙方都有關閉對於校驗位元的察核。
2. 8個位元為一組資料塊。
以RS-232為例,就是設成8N1就對了!
作者 : m10313225(葉老二)
[ 貼文 8 | 人氣 0 | 評價 0 | 評價/貼文 0 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2015/12/11 下午 03:45:19
>多此一舉,png 檔難道就不是二進位檔案嗎?在你的做法中,兩個檔案唯一不同只有副檔名不一樣而已。
>事實上 png 檔打開後就可以直接傳送了!
>而接收端收到的就是 png 檔的資料,直接可以拿來使用。

所以其實png檔用rb打開後,就是二進位檔可以傳送囉(剛剛翻書有看到了XD)
謝謝大大~~這樣感覺比較簡單來實作
作者 : m10313225(葉老二)
[ 貼文 8 | 人氣 0 | 評價 0 | 評價/貼文 0 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2015/12/14 下午 10:18:00
各位大大,小弟在STM32 Cortex M3實作上,感覺有困難,
如果要使用fopen fclose等函式必須載入FATFS(能做一些資料檔案讀寫的函式庫),
FATFS好像都是跟SD卡一起使用的,而SD卡的通訊方式是SPI bus跟SD bus,
這樣子的話,我還能夠用UART來傳送並接收圖片嗎?
作者 : ice_emissary(燃燒的大地) 貼文超過200則
[ 貼文 343 | 人氣 0 | 評價 1650 | 評價/貼文 4.81 | 送出評價 16 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人m10313225註記此篇回應為很有道理 2015/12/14 下午 10:28:54
資料傳輸的通到,和檔案系統的操作,是兩個不同的事情,彼此並無關連。
作者 : m10313225(葉老二)
[ 貼文 8 | 人氣 0 | 評價 0 | 評價/貼文 0 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2015/12/14 下午 10:36:29
>>資料傳輸的通到,和檔案系統的操作,是兩個不同的事情,彼此並無關連。
大大的意思是說,資料傳輸UART歸UART,而我另外一塊板子收到後再由SD BUS或SPI BUS讀取到SD卡,是兩回事吧?
小弟慧根不夠~~另外想再問一個FATFS,一定要跟SD卡一起使用嗎?
我不能很單純的就寫fopen,接收端收到後直接透過燒錄線傳到電腦嗎?
作者 : m10313225(葉老二)
[ 貼文 8 | 人氣 0 | 評價 0 | 評價/貼文 0 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2015/12/14 下午 10:36:40
>>資料傳輸的通到,和檔案系統的操作,是兩個不同的事情,彼此並無關連。
大大的意思是說,資料傳輸UART歸UART,而我另外一塊板子收到後再由SD BUS或SPI BUS讀取到SD卡,是兩回事吧?
小弟慧根不夠~~另外想再問一個FATFS,一定要跟SD卡一起使用嗎?
我不能很單純的就寫fopen,接收端收到後直接透過燒錄線傳到電腦嗎?
作者 : wallace_tsou(Wallace) 貼文超過200則
[ 貼文 244 | 人氣 314 | 評價 960 | 評價/貼文 3.93 | 送出評價 6 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人m10313225註記此篇回應為很有道理 2015/12/15 下午 01:31:11
距離好遠!一點一點答。
1. open()需要作業系統支援,仔細分應是磁碟系統。這就是會有SD卡出現這件事。
2. FATFS沒有支援fopen(),我也想自己寫,後來還是利用編譯器外掛函式來解決。
3. FATFS作者有另一套函式庫xprintf,可以將xprintf()功能導入UART,這樣用起來比較好用。
4. 圖檔在CM3上?應在Flash上吧!你有用Hex檔編輯器開過PNG檔?去打開看看內容是什麼,看不懂不要再前進了。回頭去研究BMP檔比較實在。
5. C函式庫有許多功能是要作業系統才有的,你的系統無作業系統,所以有些功能是不易做的。看來你要去弄清作業系統的功能。
好好加油!MCU新人
作者 : m10313225(葉老二)
[ 貼文 8 | 人氣 0 | 評價 0 | 評價/貼文 0 | 送出評價 4 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2016/1/5 下午 03:59:36
我有找到一個RL-FLASHFS,不知各位有沒有聽過,是KEIL自帶的文件系統,
移植使用他的話,KEIL官方是說可以直接使用fopen、fclose等函式,
小弟有移植好可是不知能不能真的使用(目前手邊沒有micro sd,要去買)
請問有有人有使用過可以一起討論分享的嗎?

ps.好像這種嵌入式幾乎都是大陸比較發達,都google到一堆大陸的資訊阿...,台灣是不是輸很大了
 板主 : yuan
 > 嵌入式系統(Embedded System) - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - 嵌入式系統(Embedded System) - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
嵌入式系統(Embedded System)
1 kting 770 
2 Lingb 400 
3 sazabi 400 
4 Huah 390 
5 hawkeye 380 
6 H 360 
7 yuan 350 
8 Kenny 310 
9 ozzy 290 
10 富伯 280 
嵌入式系統(Embedded System)
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/
0.046875