模擬 8 比 1 多路複用器
我們要用匯編語言編寫一個程式,專門模擬邏輯控制器介面使用的 8 比 1 多路複用器。
模擬 8 比 1 多路複用器的引腳按圖中所示。
對於此多路複用器模擬,以下所示的 8255 埠提供輸入和輸出。
- 埠 B 用作 I7-0 輸入;
- 埠 C 的 7 號引腳用作片選;
- 埠 C 的 6-4 號引腳用作選擇輸入;
- 埠 A 的 0 號引腳用作多路複用器的輸出。
示例程式碼
FILE NAME Prog_MUX.ASM ORG C100H TABLE DB 01H, 02H, 04H, 08H, 10H, 20H, 40H, 80H ORG C000H PA EQU D8H PB EQU D9H PC EQU DAH CTRL EQU DBH MVI A, 10001010B OUT CTRL ; Configure 8255 ports LOOP: IN PC RLC JNC LOOP ; Wait in the loop till chip is enabled RLC RLC RLC ANI 07H ; Now LS 3 bits of A will have select inputs LXI H, TABLE ADD L MOV L, A ; Point HL to proper row of look up table IN PB ANA M ; AND Port B with a value from look up table JZ SKIP MVI A, 01H SKIP: OUT PA ; Send out the value of selected input JMP LOOP
Advertisement