pT*:noise_F - pVision2 - [F:\BTC_book\12_10_noise\noise_F.c] - d? x
J File Edit View Project Debug Flash Peripherals lools SVCS Window Help
i® i^ y i@i |
& mm o. a |
Ga |
m |
RST
coę*
I? i> o o*
Project Workspace
Register
Value
Ulf... Q2|b...
to symulacja rejestru o sprzężęniu liniwym typu "wiele-na-jeden" (typu Fibonacci) . Druga to użycie funkcji rncl() ze standardowej biblioteki. Szum słyszalny jest poprzez Buzzer a także może być obserwowany na diodzie LED.
A****************************************************************/
#include "51xD2.h" // zbiór definiujący rejestry procesora
#include <stdlib.h>
ttdefine L SPEAKER P3 2 // Buzzer lub głośnik
//-------------
void main(void) bit a,c,l,p;
)RD wCrc = 0xFFFF; while (1) {
//LED= L_SPEAKER= rand() a= wCrc & 0x8000; c= wCrc & 0x2000;
1= wCrc & 0x0010; p= wCrc & 0x0001;
if ( a
n
{
// początkowy stan CRC (seed, preset)
& 0x01; // funkcja standardowa
// wielomian: x/,15+xA13+x/,4+l
| // każdy bit wCrc generuje szum
// symulacja rejestru liniowe wCrc = (wCre»l) | 0x8000;
else wCrc = wCrc»
Parallel P
teŁ-
Port 3 P3: |0xFF |
7 Bits 0 wwwwwwww |
Pins: OxFF | |
wwwwwwww |
X < |
Running with Codę Si ze Lirnit: 2K Load "F: \ \BTC book\\12 10 noise\\L0AD F" |
A |
X * |
Address: j |
▲ |
BS \NOISE_F\24 | |||||
-O c |
> | ||||
1 a |
ASM ASSIGN BreakDisable BreakEnable BreakKill |
T |
> C |
-1 | |
| i [\ Build ^Command ^ Find in Files j ]4 ^ ► |
i |
N | < | | [\ Memory#! ^ Memory #2 ^ Memory #3 \ Memory #4 j |
Ready
L:24 C:30
W