Yes, this is a point for information about IO and so on.
https://xanthium.in/cross-platform-atti ... rp-dot-netFrom the Site :
The Control Software that runs on Windows PC is written in C# and runs on the .Net Framework.
My Q : In the forum I have seens that FW needs activeX and no .net. This is still so anno 2018 ?
Control software is written in C# using Visual Studio community edition IDE.
My Q : Visual studio is also used by people on the forum. So FW can maybe being used to interface ?
This is how the software looks like :
//| Compiler : AVR GCC (WinAVR) |
//| Microcontroller : ATtiny2313A
- Code: Select all Expand view
#include <stdint.h>
#include <avr/io.h>
#include <util/delay.h>
#include "RS485.h"
int main()
{
char data = ' ';
uint16_t Baud = 12; // from datasheet for Clock = 1Mhz,4800bps
DDRB |= (1<<PB2) | (1<<PB3) |(1<<PB4); // PB2,PB3,PB4 all output
DDRD |= (1<<PD5); // PD5 all output
PORTB = 0x00;
PORTD = 0x00;
RS485_init(12); // intialize RS485 Port @4800bps
while(1)
{
data = RS485_Receive_Byte(); // Wait for PC to send data via RS485 port
// use a switch to select appropriate action receiving commands from PC
switch (data)
{
case 'A': PORTB |= (1<<PB3); // Switch ON LED D4
break;
case 'B': PORTB |= (1<<PB4); // Switch ON LED D5
break;
case 'C': PORTB |= (1<<PB2); // Switch ON LED D2
break;
case 'D': PORTD |= (1<<PD5); // Switch ON LED D3
break;
default: PORTB &= ~(1<<PB3); // Switch OFF LED D4
PORTB &= ~(1<<PB4); // Switch OFF LED D5
PORTB &= ~(1<<PB2); // Switch OFF LED D2
PORTD &= ~(1<<PD5); // Switch OFF LED D3
break;
}//end of switch
}
return 0;
}
//used for indicating where the code is at a given time ,Debugging purpose only
void LED_Debug_Blink(void)
{
char i = 0;
DDRB |= (1<<PB3); // PB3 Output
for(i=0;i<2;i++)
{
PORTB |= (1<<PB3); // PB3 = High,Lights up D4
_delay_ms(500);
PORTB &= ~(1<<PB3); //PB3 = Low,Switch OFF D4
_delay_ms(500);
}
}
Now before I proceed : I have seen FWH connect to different stuff with calls do DLL's and more stuff.
Is it so that if a connection can be make, maybe like above, we could use a Tbtnbmp or other controle and execute it.