樓主: wangkj
打印 上一主題 下一主題

跟我學(xué)嵌入式(arm fpga 原理圖 pcb verilog 焊接 調試 軟件硬件)

[復制鏈接]
41
 樓主| 發(fā)表于 2012-10-31 10:40:01 | 只看該作者
這事我從google搜到的一份中文資料。是關(guān)于st cortex-m0的

STM32F051系列數據手冊簡(jiǎn)介(中文).pdf (3.5 MB)

www.st.com網(wǎng)站好好翻翻,找到cortex-m0的資料鏈接是這個(gè) http://www.st.com/internet/mcu/subclass/1588.jsp
這個(gè)鏈接以后可能會(huì )有變動(dòng),大家去網(wǎng)站仔細翻吧。

可以點(diǎn)擊上面圖標的中國國旗標志,切換成中文,在網(wǎng)站的右上角。這些資料都是我們需要參考的,為了將來(lái)少被彎路,盡量多看。

http://www.st.com/internet/evalboard/product/253215.jsp
這事stm32f0 官方開(kāi)發(fā)板的連接。我想,我們要做的話(huà)盡量兼容他的開(kāi)發(fā)板,這樣,有更多的資源科利用。兼容性設計是很重要的一點(diǎn),盡量借力。

這種設計思想,很多地方都用到。盡量兼容,除非不想跟別人互通或者保密那就另說(shuō)了。
42
 樓主| 發(fā)表于 2012-10-31 10:46:22 | 只看該作者
Arduino,是一個(gè)開(kāi)源的單板機控制器,采用了基于開(kāi)放源代碼的軟硬件平臺,構建于開(kāi)放源代碼 simple I/O 接口版,并且具有使用類(lèi)似Java,C 語(yǔ)言的Processing/Wiring開(kāi)發(fā)環(huán)境。

http://zh.wikipedia.org/wiki/Arduino

我的想法,就是做一個(gè)跟st官方兼容的板子,但是去掉st-link采用串口編程,管腳兼容,這樣降低學(xué)習的成本,同時(shí)保持跟官方最大的兼容性。

同時(shí),如果可能做出這種類(lèi)似java 的語(yǔ)言開(kāi)發(fā)。

開(kāi)發(fā)者        Arduino Software
穩定版本        1.0/
2011年11月30日;10個(gè)月前 [1]
編程語(yǔ)言        Java
操作系統        跨平臺
類(lèi)型        Integrated development environment
許可協(xié)議        LGPL or GPL license
網(wǎng)站        http://arduino.cc



這事st 原廠(chǎng),采用 STM32F051R8T6 mcu做的標準開(kāi)發(fā)板,我們按照這個(gè)原型設計。

DM00050135.rar (1.75 MB)


43
 樓主| 發(fā)表于 2012-10-31 10:54:22 | 只看該作者
這個(gè)cpu的相關(guān)資料:http://www.st.com/internet/mcu/product/251901.jsp

stm32啟動(dòng)模式的描述
http://www.st.com/internet/com/T ... NOTE/CD00167594.pdf

從這里我們可以看出,通過(guò)調整boot0,boot1管腳可以選擇內置ROM的boot或者用戶(hù)的BOOT,這樣,通過(guò)串口我們就能下載程序到這個(gè)mcu。也就是說(shuō),st-link部分我們可以省掉。這樣做,有些人可能會(huì )說(shuō)調試不方便,但是,盲調是衡量嵌入式程系統的技術(shù)水平高低的重要指標。在很多場(chǎng)合,調試器用不了或者用不起。

比如調試linux內核,調試器差不多10萬(wàn)RMB。我們可以通過(guò)插入print語(yǔ)句的技巧跟蹤。跟用調試器差不多。
這些技巧。我以后會(huì )講到。

所以,精簡(jiǎn)到這個(gè)st-link問(wèn)題不大。這也不影響官方樣例程序運行。我們做的板子,排陣肯定得做成跟官方兼容的。

他的開(kāi)發(fā)板考慮了太多的因素,我們以學(xué)習為主,所以,會(huì )去掉沒(méi)必要的部分。這就是我的設計指導思路。

AN4080: Getting started with STM32F05xxx hardware development
http://www.st.com/internet/com/T ... NOTE/DM00051986.pdf

Embedded boot loader
The embedded boot loader is located in the System memory, programmed by ST during production. It is used to reprogram the Flash memory using one of the following serial interfaces:
●USART1(PA9/PA10)
●USART2(PA14/PA15).
For additional information, refer to application note AN2606.

這是第14頁(yè)的內容,這里很關(guān)鍵,指明了不用st-link如何燒程序的問(wèn)題。

22頁(yè)提到和原來(lái)mcu的兼容管腳問(wèn)題
Hardware migration from STM32F1 to STM32F0





44
 樓主| 發(fā)表于 2012-10-31 10:55:43 | 只看該作者
我們設計的板子,盡量保持兼容,這樣,能有更多的用途。畢竟,我們是學(xué)習板子,希望一物多用,在不增加成本和難度的前提下,盡量多的增加兼容性和功能。但有時(shí)候,我們必須折中考慮。

現在我們開(kāi)始著(zhù)手做原理圖了,在做之前,我們希望盡量能找到現成的抄。不過(guò),我搜過(guò)之后,發(fā)現,大部分stm32是用protel 做的,原廠(chǎng)的也是。

如果不想學(xué)allegro,只想用protel 的可以跳過(guò),每個(gè)人的看法不同,沒(méi)必要強求用什么軟件,工具就是工具,用熟練了,什么都能可以。凡事都有利有弊。

原廠(chǎng)開(kāi)發(fā)板下載資源地址
http://www.st.com/internet/evalboard/product/253215.jsp
SCHEMATIC PACKS這事原理圖的下載:http://www.st.com/internet/com/T ... f0discovery_sch.zip

killall -9 nginx是不行的,必須重新運行啟動(dòng)php-cgi的腳本才能生效。如果是apache重啟apache,我這個(gè)不是apapche,找到的都是關(guān)于apache等帖子。所以走了很多彎路。最后發(fā)現這個(gè)服務(wù)器用的是php-cgi 才找到了正確的解決方案。

解決問(wèn)題很容易,找到解決方案卻很難。
45
 樓主| 發(fā)表于 2012-10-31 10:57:33 | 只看該作者
現在我們開(kāi)始做學(xué)做原理圖了,原理圖 線(xiàn)路板 gerber 制版 買(mǎi)器件 焊接 調試 出品。這是第一個(gè)具體干活的流程,不算全面的市場(chǎng)調查,總體設計。

如果用虛擬機的,先啟動(dòng)虛擬機,點(diǎn)擊 Design Entry CIS 圖標啟動(dòng) 原理圖設計界面。如果沒(méi)用虛擬機,而是在你的電腦上直接安裝的allegro ,直接點(diǎn)擊即可。



我打開(kāi)虛擬機,準備繼續寫(xiě)教程的時(shí)候發(fā)現,竟然不能上網(wǎng)了!
我暈,然后我去我的主機的網(wǎng)上鄰居屬性查看網(wǎng)卡,竟然vbox 的虛擬網(wǎng)卡不見(jiàn)了。
我的主機安裝了 qq的電腦管家,估計是被他優(yōu)化了。
我在電腦管家沒(méi)找到相關(guān)設置,
干脆,我就啟動(dòng)vbox的安裝程序,讓他自己修復,然后重啟電腦,就好了。
我想,可能其他的啟動(dòng)優(yōu)化軟件也會(huì )有這種問(wèn)題,重新啟動(dòng)vbox的安裝軟件,點(diǎn)擊 repair修復一些應該就會(huì )好的。

點(diǎn)擊 Design Entry CIS 之后,選擇 Orcad Capture,點(diǎn)擊OK



我們現在是開(kāi)始一個(gè)全新的設計,所以選擇File -> New -> Project



46
 樓主| 發(fā)表于 2012-10-31 11:03:42 | 只看該作者
Name 填寫(xiě) Stm32F0,我們這個(gè)項目是一stm32f0 cortex-m0 mcu為例來(lái)講解的,我以,我們就起了一個(gè)這樣的名字。
點(diǎn)擊一下C:\目錄,這樣會(huì )把文件家放到根目錄下,然后點(diǎn)擊Create Dir 按鈕,新建一個(gè)目錄夾,填寫(xiě)目錄名叫做 stm32f0,然后點(diǎn)擊OK



這時(shí)候,C:\會(huì )出現 stm32f0的子目錄,選中這個(gè)子目錄,點(diǎn)擊 OK



Select Directroy 選擇我們剛剛選中的 stm32f0目錄,然后點(diǎn)擊 OK



47
 樓主| 發(fā)表于 2012-10-31 11:06:52 | 只看該作者
我們是在做原理圖,所以,選擇默認的Schematic,然后點(diǎn)擊OK



點(diǎn)擊左面的項目管理窗口 stm32f0,選擇SCHEMATIC1,鼠標右鍵點(diǎn)擊,選擇Rename,
改名為Main,這個(gè)目錄,是項目的總體說(shuō)明、系統結構、索引目錄





鼠標右鍵點(diǎn)擊 Main的PAGE1改名為PAGE1_INDEX



48
 樓主| 發(fā)表于 2012-10-31 11:08:18 | 只看該作者
填入要改的名字PAGE1_INDEX,點(diǎn)擊 OK



鼠標右鍵點(diǎn)擊 MAIN,選擇New Page,
NAME填寫(xiě)Page2_ARCH,
點(diǎn)擊 OK





類(lèi)似增加PAG3_MAIN



49
 樓主| 發(fā)表于 2012-10-31 11:10:36 | 只看該作者
雙擊 PAGE1_INDEX,出現該頁(yè)的編輯窗口,
調整該窗口到你希望的樣子,這是我調整之后的樣子,每個(gè)人喜歡不同的風(fēng)格,這是我喜歡的。
這種樣子,項目管理窗口和工作窗口都能比較清楚的看到也比較容易切換。



先點(diǎn)擊一下我們的工作窗口,然后
點(diǎn)擊 窗口右側的 place text 圖標。上那個(gè)帶abc和+號標準的圖標。

這個(gè)軟件的菜單和快捷操作是動(dòng)態(tài)切換的,根據你的工作狀態(tài),軟件動(dòng)態(tài)切換需要的操作菜單。
所以操作之前,先點(diǎn)擊選中需要操作的窗口,然后選取需要的操作。



點(diǎn)擊之后,如圖輸入“標題       分組        頁(yè)碼”拿不準空格數量的,可以拷貝分號中的內容。
注意,要改變字體,默認的字體比較小不清楚。
現在上選中狀態(tài)是紅色的,我選擇的顏色上綠色,非選中之后,就是綠色了。



50
 樓主| 發(fā)表于 2012-10-31 11:12:10 | 只看該作者
再次點(diǎn)擊 Place  Text輸入"索引              Main                  1“



按住 ctrl 鍵,然后鼠標拖動(dòng) 索引              Main                  1
復制兩份,一共三份,然后點(diǎn)擊分別雙擊第二份,第三份,修改一下內容。



這時(shí)候,我們發(fā)現,他的頁(yè)面數字上自動(dòng)增加的。
哈哈,頁(yè)面我們就省的修改了。
標題分別改成  系統結構 頂層模塊



51
 樓主| 發(fā)表于 2012-10-31 11:13:38 | 只看該作者
美化一下,我們加入一些線(xiàn)條,記住,要用畫(huà)線(xiàn)功能,不要用布線(xiàn)的wire,bus功能。
否則,后面為pcb生成 網(wǎng)絡(luò )表 會(huì )出錯的。
如果從畫(huà)線(xiàn)等功能操作狀態(tài)切換出來(lái),(這時(shí)候的鼠標上十字星)




鼠標右鍵單擊,選擇 End Mode 。這時(shí)候鼠標就變成 指針狀態(tài)了鼠標選中 工程管理窗口,然后 保存,可以用保存的快捷方式,也可以用菜單FILE \ Save
經(jīng)常保存你的工作成果是個(gè)好習慣。
我現在上傳這份工作成果,
退出程序。



在電腦的C盤(pán)中找到這個(gè)文件夾stm32f0,壓縮之后上傳。
這就是我剛才的那文件夾。

stm32f0.rar (4.63 KB)

52
 樓主| 發(fā)表于 2012-10-31 11:15:09 | 只看該作者
我們再次打開(kāi) Design Entry CIS 原理圖編輯軟件,
這時(shí)候,我們會(huì )發(fā)現,在File 菜單中多出來(lái)一個(gè)
1 C:\stm32f0\Stm32F0.opj的選項,這個(gè)就是剛才我們的工程文件,
直接選擇就能打開(kāi),將來(lái),你如果使用的工作文件多了,這里還有更多。
這樣,我們就省的自己尋找,能快速打開(kāi)經(jīng)常用到的工作文件了。

我們再次打開(kāi) Design Entry CIS 原理圖編輯軟件,
這時(shí)候,我們會(huì )發(fā)現,在File 菜單中多出來(lái)一個(gè)
1 C:\stm32f0\Stm32F0.opj的選項,這個(gè)就是剛才我們的工程文件,
直接選擇就能打開(kāi),將來(lái),你如果使用的工作文件多了,這里還有更多。
這樣,我們就省的自己尋找,能快速打開(kāi)經(jīng)常用到的工作文件了。



打開(kāi)之后,竟然發(fā)現,我們的PAGE2_ARCH,PAGE3_MAIN竟然沒(méi)在,
這可能上因為我當時(shí)沒(méi)在上面寫(xiě)東西的原因?
沒(méi)關(guān)系,增加這兩個(gè)原理圖頁(yè)面就是了。

雙擊PAGE2_ARCH,并調整他的窗口到你喜歡的樣式。

我們之所以用PAGEx開(kāi)頭,是因為,這些頁(yè)面是按照字母順序排序的,
如果不加這個(gè)PAGEx,會(huì )出現我不希望的排列順序。只是為了清楚排列才這樣做的。

用Place Text, Place Rectengle,Place Line等功能畫(huà)出我們的系統結構圖。
如果內容中,需要換行,請用ctrl+enter換行。
如果需要旋轉,用鼠標選中目標,右鍵點(diǎn)擊,出現的菜單中就有旋轉一項。
最后,點(diǎn)擊保存完成我們的設計。





53
發(fā)表于 2012-10-31 21:51:38 | 只看該作者
目測樓主大神,受教了
54
 樓主| 發(fā)表于 2012-11-1 10:37:34 | 只看該作者
上面的這兩個(gè)頁(yè)面,對于電路設計,沒(méi)有實(shí)際的任何影響,這兩個(gè)頁(yè)面,是頁(yè)面索引目錄和系統結構,讓初學(xué)者或者一個(gè)團隊中,新來(lái)的人,能很快明了整個(gè)設計思路用的。

我現在準備用另外一臺電腦繼續寫(xiě)這個(gè)教程,我把這個(gè)虛擬機中做的者部分壓縮上傳到這里了。

stm32f0.rar (5.53 KB)

Allegro 支持層次化設計,對于一個(gè)龐大的工程設計來(lái)講,非常有利,這樣,可以極大程度設計重用,減少重復工作量,同時(shí),多個(gè)部門(mén)團隊有序協(xié)作,更有利于整個(gè)項目的控制。

我下面講到的層次圖,是最簡(jiǎn)單的應用方式,我們的項目很簡(jiǎn)單,但我用這個(gè)層次圖,是為了以后的工作,實(shí)際的項目往往很大。所以,我們的這個(gè)簡(jiǎn)單設計,也是麻雀雖小五臟俱全,就是為了清晰明了的了解在實(shí)際工作中的整個(gè)流程。

層次圖工作模式,首先得進(jìn)行模塊劃分。

我的模塊很簡(jiǎn)單,系統總體 接口 mcu  usb-ttl轉換 電源

這在以前的講過(guò)。下面我們就具體把這幾部分化成層次圖。

雖然,這個(gè)設計好簡(jiǎn)單,層次圖也可以完全不用,但為了掌握將來(lái)可能面臨的負責設計,還是盡量學(xué)會(huì )這部分,將來(lái),如果復雜設計,用這種層次圖,整個(gè)設計會(huì )非常清晰明了。

這是關(guān)于層次設計的非常詳細的描述,適用于想精進(jìn)allegro的好學(xué)者,這份資料不適合初學(xué),如果對allegro還沒(méi)有一個(gè)初步的了解或者用過(guò)一段時(shí)間,暫時(shí)先不看,留在以后再看。我怕以后找不到這份資料,先放到這里了,以后方便。

層次設計和設計重用方法詳述.pdf (236.62 KB)


55
 樓主| 發(fā)表于 2012-11-1 10:43:14 | 只看該作者
我們畫(huà)的層次圖的頂層圖,就是以前貼過(guò)的page2_arch圖的細化和功能畫(huà)。
page2_arch只是個(gè)示意圖,我們在page3_main中把他具體化。



點(diǎn)擊右側邊框中的 place hierarachical Block





在出現的放置層次圖對話(huà)框中
Reference 填寫(xiě) Power
Implementation Type 選擇 Schematic View 我們畫(huà)的上原理圖
Implementatiion name 填寫(xiě) 20_Power

20_Power 前面的20是為了調整原理圖頁(yè)面顯示順序 后面的Power表示我們這個(gè)頁(yè)面上電源相關(guān)的。


56
 樓主| 發(fā)表于 2012-11-1 10:44:52 | 只看該作者
點(diǎn)擊 OK 之后,按住鼠標左鍵,畫(huà)一個(gè)矩形框
如果想調整 20_power Power這兩個(gè)字符串的位置,可以點(diǎn)擊右側快捷工具欄中的 鼠標箭頭標志,然后拖動(dòng)這兩個(gè)字符串到合適的位置。我喜歡兩個(gè)都放到同一平面,個(gè)人愛(ài)好。





比照上面的操作方法,增加 MCU,Inte**c,UsbTTL
另外三個(gè)頂層模塊
如果想旋轉字符串,點(diǎn)擊選中字符串,然后點(diǎn)擊鼠標右鍵選擇旋轉功能即可。



57
 樓主| 發(fā)表于 2012-11-1 10:47:05 | 只看該作者
我們這種設計上自頂下下的設計,先設計好總體架構,
然后再細化各個(gè)功能子模塊。這樣做的好處是總體結構清楚。
但需要對細節足夠的了解,如果總體設計上出現一個(gè)最終的細節
無(wú)法實(shí)現的功能,那后果將是災難性的。所以,設計者必須對細節有很好的把握,
才能做好這種總體設計。

現在,頂層模塊圖已經(jīng)畫(huà)完了。下面開(kāi)始各個(gè)功能模塊的設計。
我們先具體化各個(gè)功能模塊。
我們以Power模塊為例。
雙擊這個(gè)模塊,出現這個(gè)模塊的實(shí)例化對話(huà)窗,我們這個(gè)設計比較簡(jiǎn)單,
就是一頁(yè),所以直接點(diǎn)擊OK就行,如果個(gè)頁(yè)面組成一個(gè)功能模塊
最好啟用比較有意義的名字,比如PAGE1_Power_In,PAGE2_DCDC,PAGE3_LDO等等。



點(diǎn)擊確認之后,出現 Power的子窗口,調整到你喜歡的位置。
然后重新雙擊選中頂層Main/PAGE3_MAIN窗口,然后按照上面的辦法
分別雙擊Inte**ce,MCU,UsbTTL三個(gè)功能模塊,分別建立各自的功能模塊頁(yè)面。



現在,我們的總體設計完成了,記錄下我們的完成日志,
雙擊 Main/Page1_INDEX,
用右側工具欄中的Place text功能,寫(xiě)下 Follow me Project,Create at 20121028 by wangkj





58
 樓主| 發(fā)表于 2012-11-1 10:48:45 | 只看該作者
我們的工作,告一段落,這時(shí)候,保存文件,上傳或者保存到你認為比較安全的另外一個(gè)地方。
經(jīng)常備份是個(gè)好習慣。
保存之后,鼠標右鍵點(diǎn)擊C:\stm32f0這個(gè)文件夾
選擇添加到壓縮文件,選擇 備份
點(diǎn)擊選中按掩碼產(chǎn)生壓縮文件名,
這樣生成的文件包含日期信息,將來(lái),如果某個(gè)時(shí)期的版本需要用到,很容易找到。



這就是我們剛才做的成果。

stm32f020121028111206.rar (7.64 KB)

現在,我們開(kāi)始做MCU部分的原理圖,
STM32F051是很新的MCU,封裝庫中沒(méi)有。
我在網(wǎng)絡(luò )找,也沒(méi)人用allegro做過(guò)這種原理圖,所以,
我們自己做原理圖的部件。

點(diǎn)擊 File->New->Library



59
 樓主| 發(fā)表于 2012-11-1 10:50:42 | 只看該作者
出現 添加 元件庫 提示窗,
增加這個(gè)元件庫,既可以作為一個(gè)單獨的工程文件,也可以作為本工程的一部分。
我們這個(gè)工程比較簡(jiǎn)單,我們選擇默認的作為這個(gè)工程的一部分。、
如果多人寫(xiě)作工作,可以作為一個(gè)單獨的工程。

無(wú)論那種方式,生成的庫文件,都可以被單獨拷貝出來(lái),多次重復使用。



點(diǎn)擊確認之后,控制窗口出現一個(gè)Library出現一個(gè)子目錄,
這個(gè)目錄,就是新建原件庫的目錄,
里面的library1就是默認的原件庫文件名。
我們把這個(gè)元件庫改名,改成我們項目的名字。
鼠標右鍵點(diǎn)擊這個(gè)元件庫文件名,選擇 save as
然后選擇目錄,選擇到我們這個(gè)工程文件所在的目錄C:\stm32f0
填寫(xiě)文件名stm32f0
點(diǎn)擊保存








60
 樓主| 發(fā)表于 2012-11-1 11:02:34 | 只看該作者
這是一份allegro教程,想詳細了解的可以仔細看,
如果想先學(xué)會(huì ),然后再深入的,可以跟著(zhù)我做,然后后來(lái)在看,
這時(shí)候,會(huì )有更深的體會(huì )。

Cadence 簡(jiǎn)明教程.pdf (2.82 MB)

我們找到廠(chǎng)家的原理圖,在第三頁(yè),是他的MCU原理圖,我們的器件封裝參考他這個(gè)制作。




MB1034.pdf (648.2 KB)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页