99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

  • 回復(fù)
  • 收藏
  • 點(diǎn)贊
  • 分享
  • 發(fā)新帖

為什么目前的單片機(jī)依舊無法實(shí)現(xiàn)從前紅白機(jī)那樣的游戲效果

現(xiàn)有的單片機(jī)比如51,avr等都可以跑十幾MHz的頻率,擁有幾K的內(nèi)存,比以前的紅白機(jī)用的處理器跑1.8MHz應(yīng)該快多了(同樣是8bit的處理器),但是貌似用單片機(jī)還是沒辦法做出像超級瑪麗這樣比較大而且運(yùn)行流暢的游戲,這是為什么呢?

 

現(xiàn)有的單片機(jī)比如51,avr等都可以跑十幾MHz的頻率,擁有幾K的內(nèi)存,比以前的紅白機(jī)用的處理器跑1.8MHz應(yīng)該快多了(同樣是8bit的處理器),但是貌似用單片機(jī)還是沒辦法做出像超級瑪麗這樣比較大而且運(yùn)行流暢的游戲,這是為什么呢?

 

有位牛人利用單片機(jī)自制了FC游戲機(jī),該游戲機(jī)使用51系列MCU作為控制器,8bit游戲機(jī)FC的顯示芯片6538作為PPU

硬件調(diào)試已經(jīng)全部通過,實(shí)際畫面效果流暢度可以與FC媲美,目前只有一個(gè)用魂斗羅2的圖做的一個(gè)簡單的DEMO,而且效果僅僅是一個(gè)背景加幾個(gè)卡通

性能參數(shù):

MCU:STC89c52R,11.0592Mhz雙倍速,可以換更高的晶振或性能更快的51MCU

內(nèi)存:16KB

PPU:型號:UA6538(2C02)

發(fā)色數(shù),:最大發(fā)色數(shù)56色,同屏幕顯示25色

解析度:256x240

顯存:4KB

聲音:暫時(shí)沒有

輸出:CVBS, PAL制式

RF射頻

之所以想到做這款機(jī)器主要是因?yàn)槭懿涣擞脜R編寫FC游戲,于是希望使用上更快的CPU用c語言來寫FC游戲,控制器選擇使用51,因?yàn)?1性價(jià)比高,其速度足以跟得上PPU6538的節(jié)奏

而且可以方便的升級,用更快的51來替代,比如使用1T的51。

現(xiàn)在終于可以用c寫FC游戲了,這個(gè)DEMO就是在keilc開發(fā)環(huán)境上寫出來,其中沒有嵌入任何匯編代碼,卡通(主角魂斗羅)照樣可以平滑移動,不過如果場景變得更復(fù)雜還是有可能嵌入?yún)R編加速。

上圖:

3-3

1-3

2-3

 

 

全部回復(fù)(6)
正序查看
倒序查看
daylight
LV.4
2
2014-02-11 15:03

由上面的例子我們可以看出,除了cpu外,不能忽略顯示控制芯片的作用。

FC上還有一個(gè)關(guān)鍵的芯片-- PPU RP2C02 (兼容機(jī)上是UA6538),由這顆芯片來驅(qū)動電視機(jī),下為FC原理圖:

C使用理光開發(fā)的圖像控制器(PPU),有 2KB 的視頻內(nèi)存,調(diào)色盤可顯示 48 色及 5 個(gè)灰階。一個(gè)畫面可顯示 64 個(gè)角色(sprites) ,角色格式為 8x8 或 8x16 個(gè)像素,一條掃描線最多顯示 8 個(gè)角色,雖然可以超過此限制,但是會造成角色閃爍。背景僅能顯示一個(gè)卷軸,畫面分辨率為 256x240 ,但因?yàn)?NTSC 系統(tǒng)的限制,不能顯示頂部及底部的 8 條掃描線,所以分辨率剩下 256x224

 

C使用理光開發(fā)的圖像控制器(PPU),有 2KB 的視頻內(nèi)存,調(diào)色盤可顯示 48 色及 5 個(gè)灰階。一個(gè)畫面可顯示 64 個(gè)角色(sprites) ,角色格式為 8x8 或 8x16 個(gè)像素,一條掃描線最多顯示 8 個(gè)角色,雖然可以超過此限制,但是會造成角色閃爍。背景僅能顯示一個(gè)卷軸,畫面分辨率為 256x240 ,但因?yàn)?NTSC 系統(tǒng)的限制,不能顯示頂部及底部的 8 條掃描線,所以分辨率剩下 256x224

我們可以參考可編程6538圖像處理器初析

不經(jīng)過cpu運(yùn)算,通過發(fā)命令的方式讓色塊(游戲人物、障礙物)顯示、移動的功能,應(yīng)該屬于硬件渲染吧(說錯(cuò)勿怪),所以這顆芯片還是很給力的。

如果僅靠51單片機(jī)的IO口直接驅(qū)動顯示設(shè)備,那恐怕就只能得到

這樣的

這樣的

還有這樣的

以及這樣的

雖說畫面還都說的過去,但是總是感覺跟FC的效果在色彩和分辨率上有差距

 

0
回復(fù)
2014-02-22 19:31
@daylight
由上面的例子我們可以看出,除了cpu外,不能忽略顯示控制芯片的作用。FC上還有一個(gè)關(guān)鍵的芯片--PPURP2C02(兼容機(jī)上是UA6538),由這顆芯片來驅(qū)動電視機(jī),下為FC原理圖:[圖片]C使用理光開發(fā)的圖像控制器(PPU),有2KB的視頻內(nèi)存,調(diào)色盤可顯示48色及5個(gè)灰階。一個(gè)畫面可顯示64個(gè)角色(sprites),角色格式為8x8或8x16個(gè)像素,一條掃描線最多顯示8個(gè)角色,雖然可以超過此限制,但是會造成角色閃爍。背景僅能顯示一個(gè)卷軸,畫面分辨率為256x240,但因?yàn)镹TSC系統(tǒng)的限制,不能顯示頂部及底部的8條掃描線,所以分辨率剩下256x224 C使用理光開發(fā)的圖像控制器(PPU),有2KB的視頻內(nèi)存,調(diào)色盤可顯示48色及5個(gè)灰階。一個(gè)畫面可顯示64個(gè)角色(sprites),角色格式為8x8或8x16個(gè)像素,一條掃描線最多顯示8個(gè)角色,雖然可以超過此限制,但是會造成角色閃爍。背景僅能顯示一個(gè)卷軸,畫面分辨率為256x240,但因?yàn)镹TSC系統(tǒng)的限制,不能顯示頂部及底部的8條掃描線,所以分辨率剩下256x224我們可以參考可編程6538圖像處理器初析不經(jīng)過cpu運(yùn)算,通過發(fā)命令的方式讓色塊(游戲人物、障礙物)顯示、移動的功能,應(yīng)該屬于硬件渲染吧(說錯(cuò)勿怪),所以這顆芯片還是很給力的。如果僅靠51單片機(jī)的IO口直接驅(qū)動顯示設(shè)備,那恐怕就只能得到這樣的[圖片]這樣的[圖片]還有這樣的[圖片]以及這樣的[圖片]雖說畫面還都說的過去,但是總是感覺跟FC的效果在色彩和分辨率上有差距 
我不認(rèn)為做不出來,芯片的應(yīng)用場景不同。
0
回復(fù)
matou
LV.3
4
2014-02-22 19:33
即便是相同頻率的處理器,其浮點(diǎn)運(yùn)算能力和指令集也是不同的,在處理圖像和邏輯時(shí)表現(xiàn)出來的能力也不同。游戲?qū)μ幚砥鞯南闹饕卿秩径皇沁壿嫛?/span>另外超級瑪麗的技術(shù)可不簡單,用到了背緩沖,僅繪制變化的tile等等手段提高渲染效率,不用這些技術(shù)紅白機(jī)也跑不動超級瑪麗。這些技術(shù)雖然都很古老了,但也不是一個(gè)編程初學(xué)者隨隨便便可以掌握的
0
回復(fù)
close3
LV.5
5
2014-02-22 19:36
@daylight
由上面的例子我們可以看出,除了cpu外,不能忽略顯示控制芯片的作用。FC上還有一個(gè)關(guān)鍵的芯片--PPURP2C02(兼容機(jī)上是UA6538),由這顆芯片來驅(qū)動電視機(jī),下為FC原理圖:[圖片]C使用理光開發(fā)的圖像控制器(PPU),有2KB的視頻內(nèi)存,調(diào)色盤可顯示48色及5個(gè)灰階。一個(gè)畫面可顯示64個(gè)角色(sprites),角色格式為8x8或8x16個(gè)像素,一條掃描線最多顯示8個(gè)角色,雖然可以超過此限制,但是會造成角色閃爍。背景僅能顯示一個(gè)卷軸,畫面分辨率為256x240,但因?yàn)镹TSC系統(tǒng)的限制,不能顯示頂部及底部的8條掃描線,所以分辨率剩下256x224 C使用理光開發(fā)的圖像控制器(PPU),有2KB的視頻內(nèi)存,調(diào)色盤可顯示48色及5個(gè)灰階。一個(gè)畫面可顯示64個(gè)角色(sprites),角色格式為8x8或8x16個(gè)像素,一條掃描線最多顯示8個(gè)角色,雖然可以超過此限制,但是會造成角色閃爍。背景僅能顯示一個(gè)卷軸,畫面分辨率為256x240,但因?yàn)镹TSC系統(tǒng)的限制,不能顯示頂部及底部的8條掃描線,所以分辨率剩下256x224我們可以參考可編程6538圖像處理器初析不經(jīng)過cpu運(yùn)算,通過發(fā)命令的方式讓色塊(游戲人物、障礙物)顯示、移動的功能,應(yīng)該屬于硬件渲染吧(說錯(cuò)勿怪),所以這顆芯片還是很給力的。如果僅靠51單片機(jī)的IO口直接驅(qū)動顯示設(shè)備,那恐怕就只能得到這樣的[圖片]這樣的[圖片]還有這樣的[圖片]以及這樣的[圖片]雖說畫面還都說的過去,但是總是感覺跟FC的效果在色彩和分辨率上有差距 
指令集不同另外紅白機(jī)里不止有6502cpu 還有視頻處理器生音處理器,噪聲發(fā)生的好幾個(gè)硬件,所以才能用很低的頻率產(chǎn)生很流暢的畫面
0
回復(fù)
daylight
LV.4
6
2014-02-22 19:37
@matou
即便是相同頻率的處理器,其浮點(diǎn)運(yùn)算能力和指令集也是不同的,在處理圖像和邏輯時(shí)表現(xiàn)出來的能力也不同。游戲?qū)μ幚砥鞯南闹饕卿秩径皇沁壿嫛A硗獬壃旣惖募夹g(shù)可不簡單,用到了背緩沖,僅繪制變化的tile等等手段提高渲染效率,不用這些技術(shù)紅白機(jī)也跑不動超級瑪麗。這些技術(shù)雖然都很古老了,但也不是一個(gè)編程初學(xué)者隨隨便便可以掌握的
有道理,我想stm32移植過該游戲的應(yīng)該更有體會。stm32也跑的不是特別流暢。
0
回復(fù)
matou
LV.3
7
2014-02-22 19:38
是的,另外,cpu效率可能并不低
0
回復(fù)
發(fā)
主站蜘蛛池模板: 无码高潮又爽又黄A片软件 18禁无遮挡免费视频网站 | 浮生影院大全免费观看高清版 | 欧美日韩无 | 久久水蜜桃亚洲AV无码精品 | av免费片 | 日本少妇激三级做爰在线 | 日韩色综合 | 欧美日韩一区国产 | 18禁勿入午夜网站入口 | 欧美一区二区三区 | 久久精品国产亚洲A∨麻豆 日本在线看片免费人成视频 | 爱唯侦察国产合集亚洲 | 日韩在线中文字幕视频 | 免费无遮挡www小视频 | 国产成人一区二区在线观看 | 激情综合网五月激情 | 日本伊人精品一区二区三区观看方式 | 3344成人免费高清免费视频 | 亚洲成人免费视频在线 | 国产成人综合日韩精品无码 | 国产亚洲h网综合h网 | 亚洲首页一区任你躁XXXXX | 69黄色片| 中文字幕一区二区三区乱码在线 | 日韩精品视频在线观看视频 | 一本之道中文日本高清 | 国模芊芊大尺度啪啪 | 黄色小说av | 丁香花在线观看免费观看 | 精品国产麻豆一区二区三区 | 国内精品久久久久精品 | 国产精选一区二区三区 | 精品一区二区三区视频日产 | 色欧美在线视频 | 国产精品特级片 | 成人特黄a级毛片免费视频 色一乱一伦一图一区二区精品 | 国产AV午夜精品一区二区入口 | 中文无字幕一区二区三区 | 久久国产精品久久久 | 国产精品久久久久无码av | 日本欧美一区二区三区高清 |