欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 31214|回復(fù): 16
打印 上一主題 下一主題
收起左側(cè)

開(kāi)源SDCC編譯器(一)--基本介紹

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
本帖最后由 沒(méi)有你 于 2020-6-21 14:28 編輯

開(kāi)發(fā)STC單片機(jī)最常用的平臺(tái)是keil,也可以用IAR for 8051,但是這兩種平臺(tái)都只能在Windows平臺(tái)上開(kāi)發(fā)。如果要跨平臺(tái)開(kāi)發(fā)STC單片機(jī)的話,比如windows、linux和MacOS,甚至在樹(shù)莓派上,那么可以使用SDCC編譯器。SDCC的特點(diǎn)是免費(fèi)、開(kāi)源和跨平臺(tái),這個(gè)是keil和IAR沒(méi)法比的。網(wǎng)上對(duì)SDCC的資料總結(jié)不是很詳細(xì),沒(méi)有提供一個(gè)完整的makefile模板。有一款開(kāi)源下載工具stcflash可以燒錄STC單片機(jī),因?yàn)閟tcflash是用python實(shí)現(xiàn)的,所以很容易做到跨平臺(tái)。不過(guò),原作者已經(jīng)多年未更新stcflash了,導(dǎo)致stcflash也只支持一些古董級(jí)別類似STC89C51類的單片機(jī)的燒錄。我在此基礎(chǔ)上添加了對(duì)STC8全系列(STC8A、STC8F、STC8H、STC8G、STC8C)、STC15系列的型號(hào)識(shí)別和燒錄支持。下圖是在vscode終端用stcflash燒錄STC8A8K64S4A12的過(guò)程:

下圖是在樹(shù)莓派4B上對(duì)STC8H8K64U的燒錄過(guò)程:


這樣,無(wú)論在windows、linux,MacOS還是樹(shù)莓派,只要有安裝python環(huán)境,都可以正常燒錄STC新系列的單片機(jī)了。編輯代碼可以采用VScode,VScode擁有強(qiáng)大的插件支持,堪稱宇宙第一編輯器。VScode的特點(diǎn)也是免費(fèi)、開(kāi)源和跨平臺(tái)。組合VScode+SDCC+stcflash,都是免費(fèi)、開(kāi)源和跨平臺(tái),解決了代碼的編輯、編譯和下載的問(wèn)題。本次對(duì)SDCC的介紹分為三部分,第一部分是SDCC的介紹,第二部分是提供一個(gè)工程模板和Makefile的實(shí)例,第三部分是使用改進(jìn)開(kāi)源stcflash對(duì)STC8系列單片機(jī)的燒錄。下面是第一部分的內(nèi)容。
一、SDCC簡(jiǎn)介
  SDCC是一款免費(fèi)開(kāi)源的編譯器,它支持標(biāo)準(zhǔn)(ANSI C89 / ISO C90,ISO C99,ISO C11 /ISO C17)C編譯。SDCC是由Sandeep Dutta為8位單片機(jī)設(shè)計(jì)的編譯器,支持MCS51(8051,8052,8031,8032等)、STM8、PIC、DS80C390,HC08,Z80等十幾種架構(gòu)的單片機(jī)的編譯。SDCC還是一款跨平臺(tái)的編譯器,支持windows、linux和Mac OS,同一個(gè)代碼工程可以在不同平臺(tái)編譯和調(diào)試。
二、SDCC組成
  SDCC主要由可執(zhí)行文件和庫(kù)組成,其中,可執(zhí)行文件由如下構(gòu)成:
  1. 1、sdcc compiler
  2.       這個(gè)是編譯器,可以單純編譯代碼,但是沒(méi)有對(duì)生成文件進(jìn)行鏈接
  3.   2、sdcpp prepocessor
  4.     這個(gè)是預(yù)處理器,可以對(duì)頭文件和相關(guān)宏進(jìn)行預(yù)處理
  5.   3、sdas assemblers and sdld linker
  6.       這個(gè)是匯編語(yǔ)言處理器和鏈接器,可以編譯匯編語(yǔ)言,并且鏈接所有的生成文件,生成ihx格式的燒錄文件。
  7.   4、sdbinutils utilties(sdar,sdranlib,sdnm,sdobjcopy)
  8.     這個(gè)主要是由GUN Binutils分離出來(lái)的,比如可以用sdobject進(jìn)行反匯編。
  9.   5、ucsim simulator
  10.       這是軟件仿真器
  11.   6、sdcdb debugger
  12.     這個(gè)是代碼調(diào)試器
  13.   7、Packihx
  14.        這個(gè)工具可以把ihx后綴的文件轉(zhuǎn)換成hex后綴的文件
  15.   8、makebin
  16.      這個(gè)工具可以將ihx文件轉(zhuǎn)換成bin文件
  17.   9、SDCC run-time libraries
復(fù)制代碼

  庫(kù)由如下構(gòu)成:
  1.  1、dbuf library
  2.   2、Boost C++ libraries
復(fù)制代碼



三、SDCC支持的基本數(shù)據(jù)類型
  SDCC支持多種數(shù)據(jù)類型,如下圖所示:



  編譯器也允許在函數(shù)的任何地方內(nèi)聯(lián)匯編代碼,另外,也可以調(diào)用在匯編中開(kāi)發(fā)的例程。
四、SDCC的下載和安裝
  1、源碼安裝
SDCC源碼和二進(jìn)制文件包可以在到http://sdcc.sourceforge.net/snap.php#Source下載。

如果想要自己編譯的話,可以直接下載源碼編譯安裝。官方給源碼,主要是為了兼容多個(gè)平臺(tái),比如x86、ARM v6和ARM v8等。只要在對(duì)應(yīng)平臺(tái)編譯源碼,就能產(chǎn)生相應(yīng)的可執(zhí)行二進(jìn)制文件。
對(duì)linux而言,源碼的安裝包括三個(gè)步驟:配置(configure)、編譯(make)和安裝(make install)。configure文件是一個(gè)可執(zhí)行的腳本文件,它有很多選項(xiàng),在待安裝的源碼目錄下使用命令./configure –help可以輸出詳細(xì)的選項(xiàng)列表。其中--prefix選項(xiàng)是配置安裝目錄,如果不配置該選項(xiàng),安裝后可執(zhí)行文件默認(rèn)放在/usr /local/bin,庫(kù)文件默認(rèn)放在/usr/local/lib,配置文件默認(rèn)放在/usr/local/etc,其它的資源文件放在/usr /local/share?梢酝ㄟ^(guò)./configure --prefix=目錄,來(lái)指定安裝的路徑。
以Ubuntu16.4為例,下載源碼后解壓,然后進(jìn)入源碼目錄,打開(kāi)終端輸入
  1. ./configure --disable-pic14-port --disable-pic16-port --prefix=/opt/SDCC/
復(fù)制代碼
這時(shí)configure文件會(huì)檢測(cè)系統(tǒng)是否符合安裝的條件,可能會(huì)出現(xiàn)一些錯(cuò)誤:
  1. 1、缺少bison

  2. configure: error: Cannot find required program bison

  3. 解決方法:sudo apt-get install flex bison

  4. 2、找不到找不到adjacency_list.hpp

  5. configure: error: boost library not found (boost/graph/adjacency_list.hpp).

  6. 解決方法:sudo apt-get install libboost-date-time-dev libboost-program-options-dev libboost-system-dev libboost-filesystem-dev    libboost-iostreams-dev

  7. 3、沒(méi)有PIC14、PIC16設(shè)備

  8. failed for device/lib/pic14

  9. 解決方法:./configure --disable-pic14-port --disable-pic16-port
復(fù)制代碼
  如果條件符合,再輸入:make,即可編譯源碼。編譯源碼的過(guò)程中,可能出現(xiàn):
  1. 1、fatal error: zlib.h:

  2. 解決方法: sudo apt-get install zlib1g-dev
復(fù)制代碼
等待編譯完成后,輸入:sudo make install,即可安裝SDCC到Ubuntu中,而且安裝目錄就在指定的/usr/SDCC。
如果是自己指定的目錄,需要手動(dòng)添加環(huán)境變量,按照本例子,輸入:
  1. vi /etc/profile
復(fù)制代碼
在最后添加
  1. export PATH=/opt/SDCC/bin:$PATH
復(fù)制代碼
然后再執(zhí)行
  1. source profile
復(fù)制代碼
使之生效。

卸載SDCC也比較簡(jiǎn)單,如果是按照上面的那種,直接刪除/usr/SDCC文件夾即可。如果沒(méi)有指定prefix,也可以在源碼目錄輸入
  1. sudo make uninstall
復(fù)制代碼
(可能有些源碼不帶uninstall),實(shí)現(xiàn)自動(dòng)卸載程序。
  2、二進(jìn)制文件包安裝
    如果想方便的話,可以直接下載官方對(duì)應(yīng)各個(gè)平臺(tái)編譯好的二進(jìn)制文件包,注意根據(jù)不同平臺(tái)的選擇下載對(duì)應(yīng)的二進(jìn)制文件。比如window系統(tǒng),是下載exe后綴的文件,還有注意32位系統(tǒng)還是64位系統(tǒng)。Linux平臺(tái)的話,比如Ubuntu,可以在終端輸入:sudo apt-get install sdcc,系統(tǒng)會(huì)自動(dòng)下載安裝SDCC及其組件。不過(guò),這種方式安裝的SDCC可能不是最新版本。SDCC官方也提供樹(shù)莓派可以直接使用的二進(jìn)制包,想想直接樹(shù)莓派編譯開(kāi)發(fā)8051單片機(jī)也是一件比較有趣的操作!
3、查看SDCC版本
在終端輸入
  1. sdcc -v
復(fù)制代碼
可以查看sdcc的版本信息。目前我下載使用的SDCC版本為4.0.2版本。

五、SDCC的使用
1、生成文件解析
  SDCC支持命令行操作,最常用的命令就是sdcc sourcefile.c,這個(gè)命令是編譯并且鏈接生成文件,生成的文件有如下幾種:
  1. sourcefile.asm - 由編譯器創(chuàng)建的匯編文件

  2.   sourcefile.lst - 由匯編器創(chuàng)建的匯編鏈接文件

  3.   sourcefile.rst - 由鏈接編輯器創(chuàng)建的具有鏈接信息更新的匯編鏈接文件

  4.   sourcefile.sym - 由匯編器創(chuàng)建的源文件鏈接標(biāo)識(shí)

  5.   sourcefile.rel - 由匯編器產(chǎn)生的目標(biāo)文件,可以作鏈接編輯器的輸入

  6.   sourcefile.map - 由鏈接器創(chuàng)建的加載模塊的內(nèi)存映射

  7.   sourcefile.mem - 帶有內(nèi)存使用情況的文件

  8.   sourcefile.ihx - 以Intel hex forma格式的加載模塊
復(fù)制代碼
  2、多個(gè)源文件編譯
   如果只有一個(gè)源文件,可以直接用sdcc xxx.c命令編譯生成ihx文件。對(duì)于多個(gè)源文件,可以分別編譯源文件產(chǎn)生目標(biāo)文件,最后將所有目標(biāo)文件鏈接起來(lái)就行。
   假設(shè)現(xiàn)在同一個(gè)目錄下有三個(gè)源文件:foo1.c、foo2.c和foolmain.c,其中main函數(shù)在foolmain.c里。有兩種方法編譯:
  1. sdcc -c foo1.c

  2. sdcc -c foo2.c

  3. sdcc -c foomain.c

  4. sdcc foomain.rel foo1.rel foo2.rel
復(fù)制代碼
解釋:sdcc -c foo1.c告訴SDCC編譯但是不鏈接文件,編譯后產(chǎn)生目標(biāo)文件foo1.rel。sdcc foomain.rel foo1.rel foo2.rel則是告訴SDCC鏈接foomain.rel需要依賴foo1.rel和foo2.rel,最后可以生成ihx文件
  1. sdcc -c foo1.c

  2. sdcc -c foo2.c

  3. sdcc foomain.c foo1.rel foo2.rel
復(fù)制代碼
解釋:這個(gè)和上面的步驟是等價(jià)的。sdcc foomain.c foo1.rel foo2.rel告訴SDCC編譯和鏈接foomain.c需要依賴foo1.rel foo2.rel。
3、生成hex文件
   所有源文件編譯鏈接完成后,會(huì)產(chǎn)生ihx后綴的文件,這個(gè)文件無(wú)法支持用STC-ISP燒錄單片機(jī),所以需要將ihx轉(zhuǎn)成hex文件。首先找到SDCC的安裝目錄下的bin目錄,復(fù)制packihx文件到源文件目錄下,然后在終端輸入packihx xxx.ihx > xxx.hex,然后就可以生成hex文件了。
4、其他選項(xiàng)
  SDCC還有許多其他命令可以選擇,比如:
  1. sdcc --code-loc 0x2000 source.c,可以指定程序從0x2000開(kāi)始存放

  2. sdcc --opt-code-speed source.c,可以讓SDCC對(duì)代碼的運(yùn)行速度做優(yōu)化

  3. Sdcc --model-large source.c,可以指定單片機(jī)的數(shù)據(jù)存儲(chǔ)模型為large。

  4. sdcc -mmcs51 source.c可以選擇目標(biāo)處理器為MCS51,這個(gè)也是SDCC的默認(rèn)選項(xiàng),可以不用指定。但是如果要編譯STM8單片機(jī)的源文件,則要sdcc -mstm8 source.c,指定STM8。為目標(biāo)處理器。
復(fù)制代碼
  此外,還有許多其他選項(xiàng),有興趣的可以查看官方說(shuō)明手冊(cè),鏈接:http://sdcc.sourceforge.net/doc/sdccman.pdf
六、存儲(chǔ)類型
  MCS51內(nèi)部存儲(chǔ)類型如下圖所示:

1、__data/__near
  這個(gè)是默認(rèn)的存儲(chǔ)類型,聲明變量被分配到8051內(nèi)存存儲(chǔ)器RAM的可直接尋址的地址空間data里。訪問(wèn)此類型變量也是速度最快的
使用如下:
  1. __data unsigned char value;
復(fù)制代碼
  2、__xdata/__far
這種存儲(chǔ)類型聲明的變量被分配到外部存儲(chǔ)器RAM(xdata)中去,這個(gè)是large數(shù)據(jù)存儲(chǔ)模型單片機(jī)的默認(rèn)地址分配(意思就是如果指定-model-large數(shù)據(jù)存儲(chǔ)模型,定義變量就算不加__xdata,變量也會(huì)被自動(dòng)分配到外部存儲(chǔ)器RAM(xdata)中)
使用如下:
  1. __xdata unsigned char value;
復(fù)制代碼
   3、__idata
  這種存儲(chǔ)器類型的聲明被分配到8051內(nèi)部存儲(chǔ)器RAM的間接尋址空間(idata)
使用如下:
  1. __idata unsigned char value;
復(fù)制代碼
4、__pdata
這種存儲(chǔ)類型聲明的變量被分配到外部存儲(chǔ)器RAM(xdata)的前256字節(jié)空間去,這個(gè)是medium數(shù)據(jù)存儲(chǔ)模型單片機(jī)的默認(rèn)地址分配。
使用如下:
  1. __pdata unsigned char value;
復(fù)制代碼
  5、__code
這種存儲(chǔ)類型聲明的變量被分配到代碼存儲(chǔ)區(qū),這種類型的變量是只讀的,常用__code來(lái)聲明一些常量,比如查表數(shù)據(jù)等。
使用如下:
  1. __code unsigned char value;
復(fù)制代碼

   6、__bit
  這種存儲(chǔ)類型聲明的變量被分配到8051存儲(chǔ)器的可尋址區(qū)域。8051內(nèi)核有16字節(jié)的可尋址RAM(0x20-02F),總共可以提供16x8=128bits尋址位。
使用如下:
  1. __bit value;
復(fù)制代碼
7、__sfr / __sfr16 / __sfr32 / __sbit
  這種存儲(chǔ)類型通常用于特殊功能寄存器,可以以位、字節(jié)和字訪問(wèn)。比如:
  1. __sfr __at (0x80) P0  //端口P0

  2.   _sbit __at (0x80+1)   //端口P0_1
復(fù)制代碼

其中,__at表示指派一個(gè)絕對(duì)地址
七、絕對(duì)地址
  通常使用__at來(lái)指派一個(gè)絕對(duì)地址,可以指定一個(gè)變量的RAM存儲(chǔ)地址。比如:

  1. __xdata __ar (0x2000) unsigned char value //指定變量value存放在外部RAM的0x2000到0x2001地址。

  2. __code __at (0x3000) char name[5] = "SDCC";//字符串SDCC存放0x3000的ROM空間
復(fù)制代碼

八、指針
  SDCC編譯器用*字符支持變量指針的聲明,SDCC指針可用在所有標(biāo)準(zhǔn)C中可用的操作中。但是,因?yàn)?051和派生系列的獨(dú)特結(jié)構(gòu),SDCC編譯器提供兩個(gè)類型的指針:通用指針和存儲(chǔ)器指針。一些指針聲明的例子如下:
  1. __xdata unsigned char * __data p;//內(nèi)部ram的指針p指向外部ram的數(shù)據(jù)對(duì)象
  2. __data unsigned char * __xdata p;//外部ram的指針p指向內(nèi)部ram的數(shù)據(jù)對(duì)象
  3. __xdata unsigned char * __code p;//rom的指針p指向外部ram的數(shù)據(jù)對(duì)象
  4. __code unsigned char * __code p;//rom的指針p指向rom的數(shù)據(jù)對(duì)象
  5. usigned char * __xdata p;//位于xdata空間的普通指針
  6. unsigned char * p;//位于默認(rèn)存儲(chǔ)空間的普通指針
  7. char (* __data fp) (void);//位于data空間的函數(shù)指針
復(fù)制代碼


九、中斷服務(wù)例程
  SDCC編譯器支持在C語(yǔ)言源程序直接編寫8051單片機(jī)的中斷服務(wù)例程,需要用到關(guān)鍵字__interrupt,中斷函數(shù)的定義格式如下:

  1. void 函數(shù)名 (void) __interrupt (n) __using(n)
復(fù)制代碼
其中,第一個(gè)n表示中斷號(hào),第二個(gè)n表示使用寄存器組。
其中,不同中斷的入口地址計(jì)算如下圖所示:

__using(n)可以指定中斷服務(wù)例程所使用的寄存器組,單片機(jī)進(jìn)入中斷函數(shù)會(huì)先保存當(dāng)前寄存器組的內(nèi)容,如果指定其他的寄存器組,可以不保存當(dāng)前的寄存器組的內(nèi)容,直接使用指定寄存器組,可以提高效率。
  如果中斷服務(wù)例程沒(méi)有指定一個(gè)寄存器組(沒(méi)有__using)或者使用__using(0),編譯器將保存所有被使用的寄存器到堆棧的入口之上并且在退出時(shí)恢復(fù)。然而,如果中斷服務(wù)例程調(diào)用其他函數(shù),整個(gè)寄存器組被保存到堆棧中。該方案對(duì)使用非常少的寄存器的小中斷服務(wù)例程是非常有利的。
  使用時(shí),除了定義中斷服務(wù)函數(shù),還需要在main函數(shù)的源文件聲明該中斷服務(wù)例程,這樣才能正常進(jìn)入中斷
十、使用內(nèi)嵌匯編代碼
  SDCC支持兩種內(nèi)嵌匯編代碼格式:
  1. 第一種:__asm  __endasm

  2. 第二種:__asm__("inline_assembler_code")
復(fù)制代碼
其中,第二種格式需要SDCC 3.2.0版本及以上才支持。兩種格式使用示例如下所示:
  1. 第一種示例:

  2. __asm

  3.   ; This is a comment

  4.   label:

  5.        nop

  6. __endasm

  7. 第二種示例:

  8. __asm__("; This is a comment\nlabel:\n\tnop");
復(fù)制代碼
第二種格式需要使用\n來(lái)?yè)Q行,沒(méi)有第一種直觀,一般推薦使用第一種方式內(nèi)嵌匯編代碼。
可以使用內(nèi)嵌匯編來(lái)實(shí)現(xiàn)nop(空操作)的功能,一般用于延時(shí)等,可以如下定義:
  1. #define DELAY  \
  2.     __asm      \
  3.        nop     \
  4.        nop     \
  5.    _endasm
復(fù)制代碼
下一部分我會(huì)基于一個(gè)實(shí)際工程模板介紹makefile的編寫,通過(guò)makefile管理工程多個(gè)源文件、頭文件和宏。






評(píng)分

參與人數(shù) 3黑幣 +75 收起 理由
lanyue51hei + 10 期待下一篇
hui223 + 15 期待下一篇
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏18 分享淘帖 頂2 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:136083 發(fā)表于 2020-6-15 14:36 | 只看該作者
大神級(jí)別的,你這個(gè)真的太好了!
回復(fù)

使用道具 舉報(bào)

板凳
ID:580781 發(fā)表于 2020-6-26 15:45 | 只看該作者
好好學(xué)習(xí),我WIN平臺(tái)KEIL入門還沒(méi)有學(xué)好,這個(gè)只能看看
回復(fù)

使用道具 舉報(bào)

地板
ID:495287 發(fā)表于 2020-6-27 12:10 | 只看該作者
樓主NB,分享無(wú)限,這對(duì)未來(lái)越來(lái)越多的國(guó)際軟件環(huán)境限制中多一個(gè)選擇。
膜拜~~
回復(fù)

使用道具 舉報(bào)

5#
ID:656911 發(fā)表于 2020-10-8 14:21 | 只看該作者
stcflash的修改版能提供一下嗎?
回復(fù)

使用道具 舉報(bào)

6#
ID:656911 發(fā)表于 2020-10-8 14:21 | 只看該作者
stcflash的修改版能提供一下嗎?
回復(fù)

使用道具 舉報(bào)

7#
ID:351097 發(fā)表于 2020-10-12 13:41 | 只看該作者
hyq1979 發(fā)表于 2020-10-8 14:21
stcflash的修改版能提供一下嗎?

https://github.com/sms-wyt/stcflash,這個(gè)是GitHub上的下載地址。
回復(fù)

使用道具 舉報(bào)

8#
ID:223761 發(fā)表于 2021-4-5 18:28 | 只看該作者
在ubuntu系統(tǒng)上下載時(shí)超級(jí)方便,用vim(編輯器)+SDCC(編譯器)+stcflash(下載)組合。另外推薦一個(gè)軟件MCU8051IDE(集成開(kāi)發(fā)環(huán)——里面有許我實(shí)用小工具)可運(yùn)行在Window和ubuntu系統(tǒng)上,也是采用SDCC編譯(在WIN上需單獨(dú)安裝),期待下一篇。
回復(fù)

使用道具 舉報(bào)

9#
ID:895440 發(fā)表于 2021-4-5 20:44 | 只看該作者
強(qiáng),但是keli都沒(méi)用好呢
回復(fù)

使用道具 舉報(bào)

10#
ID:428114 發(fā)表于 2021-4-7 19:27 | 只看該作者
用 codeblocks 來(lái)編輯、編譯軟件,更方便。
回復(fù)

使用道具 舉報(bào)

11#
ID:922818 發(fā)表于 2021-5-17 17:53 | 只看該作者
樓主,請(qǐng)問(wèn)makefile的 操作例程 整理了嗎,很多不懂的地方。
回復(fù)

使用道具 舉報(bào)

12#
ID:351097 發(fā)表于 2021-5-19 14:32 | 只看該作者
晨昏MXL 發(fā)表于 2021-5-17 17:53
樓主,請(qǐng)問(wèn)makefile的 操作例程 整理了嗎,很多不懂的地方。

有搞過(guò)一份,我回去找找。
回復(fù)

使用道具 舉報(bào)

13#
ID:924599 發(fā)表于 2021-5-20 19:23 | 只看該作者
大佬您好,我window系統(tǒng)安裝完exe文件。查看版本就會(huì)出現(xiàn)sdcc-v不是內(nèi)部或外部命令,也不是可運(yùn)行的程序或批處理文件,是哪里出錯(cuò)了。
回復(fù)

使用道具 舉報(bào)

14#
ID:351097 發(fā)表于 2021-5-24 11:44 | 只看該作者
Tzhi 發(fā)表于 2021-5-20 19:23
大佬您好,我window系統(tǒng)安裝完exe文件。查看版本就會(huì)出現(xiàn)sdcc-v不是內(nèi)部或外部命令,也不是可運(yùn)行的程序或 ...

你需要把SDCC的路徑添加到系統(tǒng)變量里面
回復(fù)

使用道具 舉報(bào)

15#
ID:973181 發(fā)表于 2021-10-19 00:32 來(lái)自觸屏版 | 只看該作者
我只能說(shuō),很期待
回復(fù)

使用道具 舉報(bào)

16#
ID:1072625 發(fā)表于 2023-4-19 00:12 | 只看該作者
我使用sdcc tese.c編譯文件為什么會(huì)出現(xiàn)這樣的情況 :Failed to open input file 'test.c' (No such file or directory)
回復(fù)

使用道具 舉報(bào)

17#
ID:65237 發(fā)表于 2023-4-19 09:05 | 只看該作者
有沒(méi)有一款直接在小米手機(jī)上能用的
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表