This commit is contained in:
2024-11-07 19:40:05 +01:00
commit db9dccf2fb

72
main.c Normal file
View File

@@ -0,0 +1,72 @@
#include <xc.h>
#include <stdio.h>
#define LENGTH 8
unsigned int sum = 0; // Suma liczb 8-bitowych, zapisana w zmiennej 16-bitowej
unsigned char rest = 0;
unsigned char result = 0;
unsigned char read[LENGTH] = {};
unsigned char isFull = 0;
unsigned char index = 0;
void config_ad(void) {
ADCON0 = 0;
ADCON1bits.PCFG = 0b100;
ADCON0bits.ADON = 1;
}
void ad_go(void) {
ADCON0bits.GO = 1;
}
void oblicz(void) {
sum = 0;
for(int i = 0; i < LENGTH; i++) {
sum += read[i];
}
result = sum / LENGTH;
rest = sum % LENGTH;
}
void print_results(void) {
printf("result: %u", result);
printf("rest: %u", rest);
}
void main(void) {
config_ad();
while(1) {
ad_go();
while(ADCON0bits.GO)
{
}
read[index] = ADRES;
index++;
if(!isFull && index == LENGTH - 1) {
isFull = 1;
}
if(index == LENGTH - 1) {
index = 0;
}
if(isFull) {
oblicz();
}
print_results();
isFull = 0;
}
return;
}