A. 單片機怎麼在一個project裡麵包含兩個c程序
這是標準的C語言寫法。
1. 不管有多少個函數,C總是從main()主函數開始執行。
2. 至於你說的一個工程裡麵包括多個.c的文件,其實每個.c的文件里就是一系列函數而已。如果你要使用這些函數的話你要在頭文件里加入#include。比如我要用「init.c」這個文件,則頭文件中除了#include"reg51.h"你還要加#include"init.c"然後如果在"init.c"中有一個函數"init()"我需要調用。我就要在main()函數之前作聲明。(其實一般我們要調用一個函數,除非這個函數寫在main()之前。否則我都要在main()之前做函數聲明。比如在main()之前加上void init();)那麼如果這個init();在其他文件中,改如何聲明呢?我們一般可以做外部聲明.extern init();就行了。
3. 其實說穿了,你的問題就是函數聲明問題。如果前面加上正確的聲明,你的編譯應該能通過的。單片機也能按照你的要求工作了。順便說一句,如果是外部文件的數據結構,如果要調用的話,也是做extern聲明。如果還有不明白的地方你可以看看標準的c語言方面的書籍就能明白了。
B. 如何將C程序添加到單片機並能使電路運行
是51單片機嗎?
要將c程序編譯生成hex文件然後通過下載軟體下載到單片機中才能運行。
如果是你就用keil軟體編寫c程序
在Keil 軟體中設置為:
options for target 1->output->create HEX file
生成hex文件 然後將這個hex文件通過下載軟體下載到單片機中.
下載軟體有兩類:串口下載和ISP介面下載
ISP介面下載軟體是對應你的下載器的(一般買下載器都會給你對應的下載軟體的)
串口下載:STC類的51單片機可以用STC_ISP_V486.exe,但是對於Atmel類的就不行
祝你學習進步