<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 通過(guò)網(wǎng)絡(luò )添加應用程序到44B0系統全攻略2

通過(guò)網(wǎng)絡(luò )添加應用程序到44B0系統全攻略2

作者: 時(shí)間:2016-11-20 來(lái)源:網(wǎng)絡(luò ) 收藏
四、筆者在使用ftp時(shí),由于沒(méi)有目標板的uClinux的用戶(hù)名和密碼,所以登錄失??;如果你沒(méi)有遇到這樣的問(wèn)題,最好不要按照下面的方法來(lái)做!
下面是我總結了的解決方法:
  在uClinux的user目錄里面有tftp和ftp兩個(gè)服務(wù)器,可以實(shí)現遠程文件傳輸功能,tftp比較簡(jiǎn)單,不需要用戶(hù)名和密碼,ftp則比較完整,可以檢測用戶(hù)名和密碼。
  在編譯uClinux時(shí),在make menuconfig里選擇應用程序要選上ftpd,同時(shí)在busybox里要選上chroot,在tinylogin里要選上passwd,之后make user_only,make romfs,make image,make就可以生成uClinux啟動(dòng)時(shí)自動(dòng)運行ftpd程序的image了,不過(guò)使用ftp登陸時(shí)要用到檢測用戶(hù)的passwd文件,而passwd文件是由tinylogin生成的。
  在Tinylogin里用的passwd文件是在/etc目錄下,而uc-libc里ftpd用的庫函數getpwnam所檢測的passwd文件是在/etc/config下,所以我就直接修改了lib/libc/getent/getpwnam.c文件,把里面passwd文件完整路徑定義為/etc/passwd,這樣重新編譯make lib_only,make user_only,make romfs,make image,make后生成的image就可以實(shí)現ftp登陸了。

我改了一下uClinuxuClinux44b0uClinux-distuserftpd 下的auth.c的源代碼:

auth_user (const char *name,struct credentials *pcred)
{

return 0;



auth_pass (const char *passwd, struct credentials *pcred)
{

return 0;


這樣,登錄ftp時(shí),你就可以輸入任意的用戶(hù)名和密碼了。

至于telnet,不用用戶(hù)名和密碼,在運行里輸入telnet 192.168.0.100就可登錄到目標板的uClinux;不過(guò)telnet的鍵盤(pán)輸入不太好,退格不正常,不建議使用。

比較奇怪的是,經(jīng)過(guò)上面這樣做,串口終端的目錄顯示也正常了(原來(lái)多了點(diǎn)不應該顯示的符號)!

在運行里輸入ftp 192.168.0.100登錄目標板uClinux的ftp



輸入任意的用戶(hù)名和密碼,下面是登錄成功后的界面:


退出輸入bye命令,其它命令可以輸入help命令來(lái)顯示。

五、XP系統主機通過(guò)FTP訪(fǎng)問(wèn)目標板的uClinux
打開(kāi)FlashFXP,點(diǎn)擊快速連接,在出現的對話(huà)框里輸入目標板的IP地址,這里是192.168.0.100,端口號為21,用戶(hù)名不用填,記得打上Anonymous前面的勾,其它不用填,之后點(diǎn)擊連接。




OK,連接上了!可以看到目標板uClinux的目錄!之后把主機的查看文件夾設為VM5.0虛擬機中的Red Hat Linux與Windows XP的共享文件夾,方便以后的文件的傳輸!



在FlashFXP,雙擊目標板uClinux的var或tmp目錄,進(jìn)入var或tmp目錄(因為vart和tmp目錄建立在RAM中,是可寫(xiě)的,當然斷電后資料就會(huì )消失,這樣的方式常用于調試),之后可以把可執行文件拖到var或tmp目錄中完成文件的傳輸。
此時(shí),可執行文件已傳輸至目錄/var或/tmp下,但文件的可執行屬性未被設置,添加文件的可執行屬性,鍵入命令:
chmod755armtest(armtest為可執行文件的文件名)
chmod是一個(gè)文件權限修改的命令,在文件創(chuàng )建的時(shí)候會(huì )自動(dòng)設置存取權限,若是這些默認權限無(wú)法適合企業(yè)環(huán)境的需求,就可以利用chmod命令來(lái)修改存取權限。通常在權限修改的時(shí)候可以用兩種方式表示權限類(lèi),數字表示法和文字表示法。
這里我們采用的是數字表示法,就是說(shuō)將讀取(r),寫(xiě)入(w)和執行(x)分別以4,2,1來(lái)代表,沒(méi)有授予的權限的部分就表示值為0,然后再把所授予的權限先加而成。表7.4為讀者列出了幾個(gè)例子。


每三位字符為一組,這樣權限可以被分為三組,第一組表示此文件擁有者的存取權限,第二組表示該文件擁有者所屬組成員的存取權限,最后一組表示該文件擁有者所屬組之外的用戶(hù)存取權限。希望讀者能夠研究清楚權限的分配。
這里所鍵入的命令表示授予文件擁有者讀取、寫(xiě)入、執行的權限,而該文件擁有者所屬組成員和該文件擁有者所屬組之外的用戶(hù)只擁有讀取、執行的權限。
執行程序armtest,鍵入命令:
./ armtest (呵呵,目標板上的LED終于閃了)

六、Linux系統主機通過(guò)FTP訪(fǎng)問(wèn)目標板的uClinux
在RedHat Linux 9.0系統運行g(shù)tfp軟件,有關(guān)網(wǎng)絡(luò )配置的問(wèn)題請參看《Vmware虛擬機+RedHat 9.0 Linux網(wǎng)絡(luò )配置》:



輸入目標板系統的IP地址和設置端口號為21,登錄即可:




七、在XP系統主機架設FTP服務(wù)器
在XP系統主機架設FTP服務(wù)器后,目標板的uClinuxXP就可以通過(guò)FTP訪(fǎng)問(wèn)XP系統主機,自行下載文件,不過(guò)方法不如FlashFXP好用。
先上網(wǎng)一個(gè)下載wftpd.exe文件,啟動(dòng)該軟件,選擇菜單”Security”->”users and Rrights”
在彈出來(lái)的對話(huà)框里點(diǎn)擊“New User”,接著(zhù)在彈出對話(huà)框輸入你想新建的用戶(hù)名,



最后在彈出來(lái)的對話(huà)框輸入你想設置的登錄密碼



為了以后輸入方便,讓它空著(zhù)也可以^_^
點(diǎn)擊OK后回到第一個(gè)對話(huà)框:




在“User Name”里選擇剛才新建的用戶(hù),點(diǎn)擊“Right<<”按鈕,設置好用戶(hù)的權限和可訪(fǎng)問(wèn)的目錄,最好點(diǎn)擊“Done”按鈕完成配置和退出。
至些在XP系統主機的FTP服務(wù)器總算架設好了!

八、目標板的uClinux通過(guò)FTP訪(fǎng)問(wèn)XP系統主機
當目標板與XP系統主機已經(jīng)正確建立連接并且在XP系統主機架設好FTP服務(wù)器后,先進(jìn)入目標板的uClinux系統的可寫(xiě)目錄var或tmp(這個(gè)別忘了),并登錄到XP系統主機:
cdvar
ftp192.168.0.80
此時(shí)輸入XP系統主機上的用戶(hù)名及密碼,便與XP系統主機建立了FTP連接。為傳輸二進(jìn)制文件,鍵入命令:
Binary
超級終端會(huì )顯示:
200 Type set to I
這里請各位注意:在用FTP進(jìn)行文件傳輸的時(shí)候,一定要選好文件傳輸的模式,FTP缺省模式為二進(jìn)制模式,但是為了保險起見(jiàn),還是手動(dòng)把傳輸模式顯式改寫(xiě)為二進(jìn)制模式。通常的txt,html和絕大多數PS文件都是文本格式的,而其他的可執行文件,壓縮文件都是二進(jìn)制格式。兩種格式之間要用ascii和binary命令切換,兩者都可以適當縮寫(xiě)。
傳輸已編譯好的可執行文件(如armtest)到目標板,鍵入如下所示命令:
getarmtest
退出FTP服務(wù),鍵入如下所示命令:
bye
設置文件權限和執行程序請參考第五節。

九、目標板上網(wǎng)!
首先用網(wǎng)線(xiàn)連接你的目標板和外網(wǎng);
使用SecureCRT這個(gè)軟件作為目標板的串口顯示終端;SecureCRT是可以顯示顏色的,也比普通的串口終端智能。
輸入下面的命令設置路由IP
route add default gw 192.168.0.1
最后使用telnet命令登錄你要登錄的主機,在此登錄的是華南木棉bbs
輸入下面的命令:
telnet 202.112.17.137




十、寫(xiě)在最后
這種方法在應用程序的開(kāi)發(fā)中是比較有用的,使用這種方式可以使用戶(hù)在宿主機的開(kāi)發(fā)環(huán)境下,編譯代碼,但編譯出來(lái)的flat格式的文件并沒(méi)有放到目標系統的FLASH存儲器,而是在系統的SDRAM中運行,這就大大節省了調試的時(shí)間,內核編譯只需要進(jìn)行一次,使開(kāi)發(fā)人員能夠將更多的精力投入到應用程序的開(kāi)發(fā)中來(lái)。
但由于目前所使用的uClinux操作系統內核采用ROMFS作為其根文件系統,當目標系統的uClinux啟動(dòng)運行以后,其目錄大多數是建在FLASH存儲器中,因而是不可寫(xiě)的,只有var、tmp等少數幾個(gè)目錄是建立在SDRAM,是可讀寫(xiě)的,但若目標系統掉電,內容就丟失了,因此只能作為應用程序調試之用,當應用程序調試完成后,還應將其寫(xiě)入FLASH存儲器。當然,若能在目標系統中使用JFFS/JFFS2,用以代替ROMFS作為其根文件系統,則整個(gè)目標系統就像有磁盤(pán)一樣方便,用戶(hù)應用程序的加載再也不用像前面介紹的方式進(jìn)行了。關(guān)于JFFS/JFFS2文件系統的建立,請讀者參考相關(guān)技術(shù)資料。


關(guān)鍵詞: 網(wǎng)絡(luò )44B0系

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>