|
發布時間: 2020-8-8 14:26
正文摘要:本帖最后由 海闊天空8 于 2020-8-17 18:23 編輯 最大的不同我感到6116斷電就把存儲內容丟失了!但它可以完成單片機某些功能:例如使8個LED間隔相同時間依次亮起來再依次熄滅。當然單片機也可完成這 ... |
hhdsdy 發表于 2020-8-27 22:14 以下的話是對網友說的,樓主請當我是透明的。 哥們,你就不要再和樓主討論這個問題了,樓主在單片機領域的境界比你我都高的,你應該是用C語言的,我是用匯編的,樓主只要0和1就能操作單片機了,對于可編程器件不編程就能進行操作的,目前,在半導體行業屬于第一人。 樓主的8051單片機也是一種新型單片機:只要0和1就可以操作的操作了,完全不用去看數據手冊,也不用管他硬件是什么,以前你要幾十上百行代碼的,現在只要0和1(樓主一直在強調的一個重心“0和1”要讀重音!!!。┚涂梢圆僮鳌 如果你認真看過,你就會發現: 1:樓主自學(和網友抬杠)單片機近兩年,竟然一直都沒有提到過時鐘,很顯然,樓主的單片機是不用時鐘的 2:樓主愿意花了近兩年的時間跟傳統單片機對抗,說明樓主已經新研發了一種新型的8051單片機 3:樓主到現在還不知道“燒錄”和“編程”這兩個東西的區別,你覺得還有必要討論嗎? 像這種帖子,就當自己是吃瓜群眾,看看就行了,不要再回復了,你一回復了,沒有什么攻擊性語言的話,管理員就得通過,一通過了,這種沒有意義的帖子就會排到前面來了,就會把那些真正需要幫助的帖子擠下去了 我以前是在網上求問題找到這的,現在也算是回報社會,能幫就幫了。對于這種帖子,看看就行,讓它自己沉下去就好了,你就當是去看廣場舞:我很反感廣場舞,但我喜歡看那么幾眼,看看人家丑態用以提醒自己:我可不要變成那種樣子的人! |
海闊天空8 發表于 2020-8-27 10:00 都懶得回復你了,還翻老帖出來頂。 “如您所說,能叫89C2051完成的6116的功能也可以呀?怎么接線?”---------我只是說,單片機可以接受0和1 ,并不是說可以完成6116的功能,單片機內部有少量的RAM,可以存儲以及讀取數據,斷電不能保存。另外,雖然單片機可以完成RAM的存取,但是你絕對無法像6116那樣對單片機片內的RAM進行存取操作,必須使用程序。 既然回復了,也就一起再次給你潑冷水。 “這樣說我的想法也不是沒有一點根據的呀?難道現在的單片機從硬件講不能接受0和1了嗎?這個我還真不知道。”----------你學了漢語拼音的26個字母,就會英語了嗎?同樣是0和1組成的程序,各種單片機的運行結果都會不一樣,更何況你那還只是數據而不是程序,單片機能接受0和1,但你不學單片機語言有什么用,難道你學了漢語拼音就可以去考托福了? “現在基本可以這樣說,但也不排除例外。從數字電路硬件基本原理的角度去看看單片機的基本原理就真的不行嗎?當然這要有一定的知識儲備,而我理解的也就是一些支離破碎的東西不成系統,所以障礙很大!---------------絕對沒有意外,不要存僥幸心理,數字電路和單片機還是完全不同的,你認識的26個拼音在英語上讀音和意思就完全不同了。 “從最簡單的單片機程序(0和1)輸入,輸出這個過程難道就沒有一點希望嗎?”-----------想要輸入什么輸出是什么絕對不可能,這個我和壇友們已經說過多次了,再喋喋不休只能體現你是不可救藥之人。 “現在大概一般可以這樣說。但這絕不是唯一的方法。數碼開關可以輕而易舉的半島的,難道不是嗎?”------------都說了絕對不可能,你加撥碼開關,只是強行改變單片機的引腳電平,極有可能造成單片機燒毀。 “這句話給我很大的信心!不管輸入,輸出一樣不一樣,總能輸出了就是進步!關鍵是怎么輸入(如何操作?)怎么變成輸出狀態?,各腳電平如何設置?這是關鍵!”------------死了這條心,想要單片機輸出,不是隨便編一組數據進去就行,那是需要特定的程序,所以說學習單片機語言是必須的。 “就是不想通過軟件控制硬件的方式來使單片機工作”------------就是這個意思!有沒有可能?-----我的回復是絕對不可能! “未必是這樣吧?單片機輸出引腳電平的改變當然是由程序控制的,怎么控制的?還不是改變引腳電平實現的嘛?引腳電平的改變可以自動(由程序完成)為什么就不能手動完成?不談繁瑣程度,只說手動能不能?”------------我說得沒錯,你就喜歡和人爭論類似于2+3=9之類的問題,單片機需要程序才能運行,這是特意設計的,也是大家的共識,它的引腳電平的改變只能是由程序來進行,手動想由硬件來進行改變是絕對不可能的。 “你能告訴我怎么做,足以!”------------------真要想學單片機,必須學會一種單片機語言,你可以先了解一下匯編語言,這個和機器碼有對應的關系。 “我就是想知道有沒有可能性!從網友回復來看是可能的(不管效率和其他)”-----------那是壇友沒有理解你另類的想法,再次說這是絕對不可能的,不學單片機語言你最多只能依靠壇友們給出的一些機器碼編程進去,那就不是玩單片機了,你要捕魚的方法壇友們會幫助你,但是要是你一直找壇友們要魚吃而自己不去捕,你覺得會怎么樣? “這不結了嗎?我直接用機器碼不可以嗎?也就是我理解的單片機只能識別0和1.”------------1:單片機必須編程,所以你說的不用編程器是不可能的。 2:你不學單片機語言,會知道什么樣的機器碼才會讓單片機輸出嗎?自己想玩單片機,不可能一直讓壇友們給你提供機器碼,而且你這樣也不算數玩單片機。 “基礎是什么?高層次又是什么?請舉例說明!-----------有誰一直在說什么“固定下來”?還有關于地址等的理解,這些你為什么不去了解?你想玩單片機,不會是連單片機的一些基本知識都不想去了解吧? “您的意思是不是現在的單片機通過各種語言轉化成0和1和電路對話?也就是說單片機依舊是只認識0和1”-------------是這樣,但不表示你隨意輸入一些數據就可以讓單片機進行輸出,如同上面的比喻,認識26個拼音,不一定懂得讀26個英語字母,更不表示會說、寫英語以及對話了,這涉及的就是單片機語言。 |
hhdsdy 發表于 2020-8-15 14:19 ”最早的單片機只能接受0和1,也就是你上面6116所輸入的那樣,“-------------------如您所說,能叫89C2051完成的6116的功能也可以呀?怎么接線? |
搪瓷杯 發表于 2020-8-15 02:23 機器語言或稱為二進制代碼語言,計算機可以直接識別,不需要進行任何翻譯。 |
hhdsdy 發表于 2020-8-15 14:19 “最早的單片機只能接受0和1,”--------------您的意思是不是現在的單片機通過各種語言轉化成0和1和電路對話?也就是說單片機依舊是只認識0和1 |
hhdsdy 發表于 2020-8-10 23:56 人機對話歸根結底是用0和1對話,這樣看沒問題吧?我的想法不就是繞過這語言那語言的嗎? |
yzwzfyz 發表于 2020-8-12 11:09 單片機功能當然要比6116多得多了,關鍵我不會用~^_^ |
wc86110 發表于 2020-8-9 20:00 弄透我就不問了 |
yzwzfyz 發表于 2020-8-10 13:45 6116基本會用了呀?地址端,數據端,寫入/輸出的轉換 |
hhdsdy 發表于 2020-8-15 15:00 ”不要沒有一點基礎就問比較高層次的東西! ------------基礎是什么?高層次又是什么?請舉例說明。 |
yzwzfyz 發表于 2020-8-10 13:45 直接給單片機輸入機器碼(我理解就是0和1)不可以嗎?苦于不會設置各引腳狀態 |
hhdsdy 發表于 2020-8-15 14:19 “實際上用匯編語言編寫的程序最后還是會轉換成機器碼輸入單片機,因為單片機僅僅只能識別機器碼!--------------這不結了嗎?我直接用機器碼不可以嗎?也就是我理解的單片機只能識別0和1. |
hhdsdy 發表于 2020-8-12 13:56 “而是想玩單片機又不想學匯編語言和C語言,”---你理解的完全正確!我就是想知道有沒有可能性!從網友回復來看是可能的(不管效率和其他) |
搪瓷杯 發表于 2020-8-15 02:23 抱歉,“機器語言”我還真不清楚!就是用0和1(電位的高低有無的意思嗎)? |
hhdsdy 發表于 2020-8-11 13:00 你能告訴我怎么做,足以! |
wwh2382 發表于 2020-8-10 20:12 難道不對嗎? 愿聞高見! |
wwh2382 發表于 2020-8-10 16:18 單片機雖然功能強大但它也是用0和1控制執行電路的吧? |
海闊天空8 發表于 2020-8-16 08:18 你可以這么認為,因為這是設計定死的,所以你說不學單片機語言會讓它有對應的輸出嗎(是對應不是相同)? 重新輸入不就把原來的數據覆蓋了嗎?--------------在相同的地址上重新輸入就是覆蓋了。 程序就是數據的組合嗎?------------------程序在轉換成機器碼后,你可以看成是一堆數據的組合,只是這個組合不能被打亂和更改,否則會發生意料不到的各種錯誤。 這樣說我的想法也不是沒有一點根據的呀?難道現在的單片機從硬件講不能接受0和1了嗎?這個我還真不知道。--------------我說的是以前,所以你的想法早就沒用了,就拿最常見的STC單片機來說,它是通過串口下載的,編程總共就兩根數據線,你還能按6116那樣對它進行編程嗎?正視壇友們的勸吧,不要沉迷于自己錯誤的執著。 “學單片機肯定是避免不了單片機語言的”-----現在基本可以這樣說,但也不排除例外。從數字電路硬件基本原理的角度去看看單片機的基本原理就真的不行嗎?當然這要有一定的知識儲備,而我理解的也就是一些支離破碎的東西不成系統,所以障礙很大。 -----------------------絕對無法躲過單片機語言的,這點你無須再爭辯,否則只能被人看著爭論2+3=9那樣讓人不愿幫你。 從最簡單的單片機程序(0和1)輸入,輸出這個過程難道就沒有一點希望嗎?---------------機器碼輸入也只能是老式的單片機或者外掛存儲器才行,而且你這機器碼從哪來的?還不是需要學習單片機語言得出該用什么樣的機器碼。無論如何,想玩單片機,編程器和單片機語言是缺一不可的,再固執下去,只會讓壇友們反感,自己不懂還非要堅持錯誤的看法。 現在大概一般可以這樣說。但這絕不是唯一的方法。數碼開關可以輕而易舉的半島的,難道不是嗎?------------------既然如你所說,你怎么不辦到?你這和一個沒有任何生物學、遺傳學知識的連公雞都不認識的,卻要堅持讓公雞下蛋的人沒什么區別,雖然話重了點,比喻卻剛好。 “就是不想通過軟件控制硬件的方式來使單片機工作”------------就是這個意思!有沒有可能?---------------------早就確認過絕對不可能了,你非要這么堅持,建議你刪除這幾個帖子,自己潛心靜氣去研究一輩子,不要來浪費壇友們的時間和精力了。你用復印機復印一張資料,還得開啟復印件電源,設定張數和對比度,最后按壓復印按鍵才能復印出來,這個流程有的可以省略,但是按壓復印按鈕還是得做的,你現在就想把資料放上去,不按按鍵讓復印機復印,這不是為難人嗎? |
hhdsdy 發表于 2020-8-12 23:21 “我之前說的意思是,單片機沒有程序進行控制,你是沒法逼迫它改變輸出引腳的電平的,也就是必須用程序改變輸出,”-------------------------未必是這樣吧?單片機輸出引腳電平的改變當然是由程序控制的,怎么控制的?還不是改變引腳電平實現的嘛?引腳電平的改變可以自動(由程序完成)為什么就不能手動完成?不談繁瑣程度,只說手動能不能? |
hhdsdy 發表于 2020-8-12 13:56 “就是不想通過軟件控制硬件的方式來使單片機工作”------------就是這個意思!有沒有可能? |
搪瓷杯 發表于 2020-8-15 02:23 “單片機是可以像6116這樣輸入數據進行編程的,但是運行起來后輸出的不是輸入的數據!---------這句話給我很大的信心!不管輸入,輸出一樣不一樣,總能輸出了就是進步!關鍵是怎么輸入(如何操作?)怎么變成輸出狀態?,各腳電平如何設置?這是關鍵! |
hhdsdy 發表于 2020-8-12 13:46 “不通過軟件改變單片機的輸出引腳電平”------------現在大概一般可以這樣說。但這絕不是唯一的方法。數碼開關可以輕而易舉的半島的,難道不是嗎? |
hhdsdy 發表于 2020-8-12 07:04 “學單片機肯定是避免不了單片機語言的”-----現在基本可以這樣說,但也不排除例外。從數字電路硬件基本原理的角度去看看單片機的基本原理就真的不行嗎?當然這要有一定的知識儲備,而我理解的也就是一些支離破碎的東西不成系統,所以障礙很大。 從最簡單的單片機程序(0和1)輸入,輸出這個過程難道就沒有一點希望嗎? 按電路圖連接元件我自認為沒問題,如果有人不厭其煩的告知寫入時各腳電位如何設置,如何固定輸入的數據;輸出時各引腳社置成什么狀態,我想我還是能明白如何操作的。 |
hhdsdy 發表于 2020-8-15 14:19 “我先來說一下單片機語言的簡單由來,最早的單片機只能接受0和1,也就是你上面6116所輸入的那樣”---------這樣說我的想法也不是沒有一點根據的呀?難道現在的單片機從硬件講不能接受0和1了嗎?這個我還真不知道。 |
hhdsdy 發表于 2020-8-15 14:19 “因為輸入的是程序而不是數據”-----------這話怎么理解?程序就是數據的組合嗎? |
juncedz 發表于 2020-8-12 13:00 重新輸入不就把原來的數據覆蓋了嗎? |
搪瓷杯 發表于 2020-8-15 02:23 “單片機是可以像6116這樣輸入數據進行編程的,但是運行起來后輸出的不是輸入的數據!----這話挺有意思?輸出的數據和寫入的數據不一樣?是不是“語言”的作用? |
海闊天空8 發表于 2020-8-13 17:52 所以最基礎的知識得靠自己學,不要沒有一點基礎就問比較高層次的東西。 “學單片機肯定是避免不了單片機語言的”!并不絕對吧?我不怕走彎路,我已經走過很多彎路。即使這輩子不會也沒什么!--------------------這個是絕對的 加大電容的方法是不可取的!電路原理是6116掉電就丟失數據你這是器件固有的性質吧?----------------------加電池就行,加電容也不是不可取,掉電會丟失數據并不表示不能加裝后背電源來保存數據,因為6116的靜態耗電不大,完全行得通。實際上就算ROM和EEPROM不怕掉電,也是有個理論上的保存時間,并不是絕對的長久保存。 回帖被刪了幾次,自覺沒有涉及xxxx行為,最多也就說你軸,一根筋的意思,沒有罵人的意思,版主也未就刪帖情況作出說明,全程都是在爭辯單片機上的事情,不明就里。 |
海闊天空8 發表于 2020-8-13 17:48 我先來說一下單片機語言的簡單由來,最早的單片機只能接受0和1,也就是你上面6116所輸入的那樣,人們把這個只由0和1組成的叫著機器碼(機器碼是針對單片機的,你給6116輸入的不屬于機器碼而僅是數據,而且你把這組數據輸入給單片機,輸出絕對會變樣,因為輸入的是程序而不是數據),但是這樣的機器碼只能機器能識別,人不但不好識別還容易看錯,更是難以解讀程序。針對這樣的情況,就出現了匯編語言,匯編語言和機器碼一一對應起來,用的是人類容易理解的詞匯,實際上用匯編語言編寫的程序最后還是會轉換成機器碼輸入單片機,因為單片機僅僅只能識別機器碼。匯編語言針對性太強(不同系列型號的單片機匯編語言不同),程序的可讀性也不夠好,有點像我國各地的方言,于是又有了單片機的C語言,類似于普通話了。 單片機設計就是能夠計算、能夠控制程序順序執行或者跳轉執行的,它能依據輸入的機器碼不同執行不同的指令,所以它和存儲器最大的區別是,存儲器輸入的是數據,輸出的也是數據,不會有一絲一毫的改變,而單片機輸入的就是指令了(它把輸入的數據當成指令來用,這是人們特意為它設計的),所以輸出絕對不會再是輸入的數據,就好比你讓打印機打印 2+3= ,打印機只會打印出 2+3= ,但你在計算器上輸入 2+3= ,它只會顯示5一樣,不同類的東西結果是不同的。 另外一點,上面說的機器碼,你可能會認為我不需要學匯編語言只要機器碼輸入就能玩單片機,這個想法也是錯的,什么樣的機器碼能夠控制P1口的輸出11110000?這你絕對不知道,你也別指望給單片機輸入11110000它就能輸出11110000,實際上機器碼就是單片機語言的一種,匯編只是一一對應方便閱讀,而不是說匯編語言是機器碼的單片機語言。 |
海闊天空8 發表于 2020-8-13 17:48 這就是你軸的地方,我知道它們共同點多了去,都是動物怎么會沒有相同點呢,但是這樣的比較有意義嗎?你要問大閘蟹和毛蟹有什么區別,人家會正兒八經回答你,你要是問雞和烏龜有什么區別,別人只會覺得你無聊透頂來搞怪,這不是學習的方向和態度。 |
海闊天空8 發表于 2020-8-13 07:04 社會在進步,很多舊的已經過時淘汰了,你無法是想要表達既然以前的單片機可以不用電腦,為什么現在就不行了。我前面已經說過了,你要是在單片機外面加掛存儲器,程序存在存儲器上而不是單片機里,那就可以不依賴電腦,可你似乎并未聽進去,非要拿現在的單片機用以前的方法來編程。以前出門可以不要手機,現在你試試,沒有智能手機出示健康碼,你很多地方都進不去,F在的老師是通過微信群和電腦布置作業,你還像以前一樣不用手機不用電腦試試你的孩子還能正常學習嗎? 你想玩以前的編程方式,像現在的STC單片絕對不適合于你,沒有外掛存儲器而不用編程器是沒法玩轉單片機的,這是單片機的設計造成的,你無法更改只能接受。 |
|
哈哈,我明白了,樓主是想學機器語言。 單片機是可以像6116這樣輸入數據進行編程的,但是運行起來后輸出的不是輸入的數據。 6116是個存儲器件,你寫什么數據進去,輸出必定還是這些數據。單片機不一樣,輸入的數據是可執行的,就是說你輸入的是一串命令,單片機根據這些命令執行,再輸出執行的結果。 |
海闊天空8 發表于 2020-8-13 17:59 非也! 完全用6116RAM代替2716ROM用,不用擦除ROM每次燒寫的煩惱麻煩,用6116方便至極, 是AT29C010A無法 做到的, 每個人的想法不同,站立i的角度不同,結果也是不同的。 |
juncedz 發表于 2020-8-12 12:54 加大電容的方法是不可取的!電路原理是6116掉電就丟失數據你這是器件固有的性質吧? |
hhdsdy 發表于 2020-8-12 07:04 “學單片機肯定是避免不了單片機語言的”!并不絕對吧?我不怕走彎路,我已經走過很多彎路。即使這輩子不會也沒什么! |
hhdsdy 發表于 2020-8-11 13:00 馬云也不是學的經商,華羅庚也沒有高學歷, |
hhdsdy 發表于 2020-8-11 12:47 你說得沒錯!把論壇作為系統學習的補充有何不可?交流也是一種方式。這里一般說也沒有義務和責任,兩廂情愿,甚至有消遣的意思。前提是不違規。 |
hhdsdy 發表于 2020-8-12 23:21 “我自始至終的意思是:你想玩單片機,就必須得學單片機語言,不管是匯編還是C!-----這話我不認同。既然有多種計算機語言,恰恰說明語言只是工具而已(而且有多種,說明不是唯一。⒉荒苷f明沒有計算機語言玩不了單片機。語言只是使用某種規則提高了效率而已。是人為規定的一種和單片機對話的規則,就像英國人用英尺中國人用市尺,,,,,甚至某國王用他的腳長作長度單位!有何不可?甩開語言直接和單片機對話為什么就不行呢?我看是可以的! |
wwh2382 發表于 2020-8-9 08:30 “你的例子也是程序控制,不過是很簡單的而且是固定的!---------我可以改變輸入,輸出的內容呀?只是很費事而已,“寫入”,“讀出”,應該是基本內容吧? |
yzwzfyz 發表于 2020-8-10 13:45 很多師傅就是關鍵的地方不說!也怪我問的不明白?循規蹈矩往往是科班出身的學者專家的認識方法,我都是些支離破碎的垃圾堆里的東西,難以溝通,,,,,,,,,,,, |