Helauauau und Alaaaf,
für ein Programm das mit dem PC kommunizieren soll wollte
ich die USB-Verbindung nutzen und deshalb aus probieren!
Mein Programm lehnt sich an das von "UART1" an. Siehe unten.
Aber auf Txd1 zuckt und Ruckt nichts. Wenn ich P6_7 (pin Txd1) direkt "anspreche" geht 's aber - nix kaputt!!!!
Wo ist was Falsch? Im "initUART1"? Oder im "sendTxD1"?
#include "sfr111.h"
#include "hwsetup.h"
void initUART1(void)
{
pd6_7 = 1;//Txd1 Output
pd6_6 = 0;//Rxd1 Input
p6_7 = 0;//Txd1 = 1
u1c0 = 0x10;//CTS disabled ????? ist es das CTS von der "Seriellen" -Welcher Pin?
u1brg = 0xA2;//9600bps ?????? Wie ist die Periphere Clock-Frequens auf unserem Board ( Nach "ConfigureOperatingFrequency();" )
u1c1 = 0x05;//
u1mr = 0x05;//
u1smr = 0x00;//
u1smr2 = 0x00;//
u1smr3 = 0x00; //
u1smr4 = 0x00; //
re_u1c1 = 1;//
te_u1c1 = 1;
}
void sendTxD1(unsigned char data)
{
while (ti_u1c1 == 0);
u1tb = data;
te_u1c1 = 1;
}
/**********************************************************************************
unsigned char receiveRxD1(void)
{
unsigned char data = 0;
unsigned char dummy;
while (ir_s1ric == 0);//Warten bis Post kommt
//if (ir_s1ric == 1)//ist Post gekommen?
{
ir_s1ric = 0;//Flag rücksetzen
data = u1rbl;//Post rausnehmen
dummy = u1rbh;
re_u1c1 = 1;
}
//else data = 0;keine Post!! 0 abliefern
return data;//und abliefern
}
************************************************************************************/
void main(void)
{
unsigned char Data;
ConfigureOperatingFrequency();
initUART1();
Data = 65;
while(1)
{
//Data = receiveRxD1();
sendTxD1(Data); //soll ständig senden!!!!!!!!!!!!//um was messen zu können
}
}
Ein funktionierendes Beispiel wehre sehr Hilfreich!!!
Ein paar elementare Fragen stehen auch in den Kommentaren.
schon mal Vielen Dank im voraus
Gruß Roland
