با سلام و احترام

بنده چندین سال سابقه برنامه نویسی با زبان C#‎‎‎‎‎‎‎ را دارم.

در حال حاضر برای طراحی و ساخت یک پروژه نیاز به میکرو دارم که شروع به ساخت دستگاه کنم.


حال مسئله اینجاست که هم کدویژن دارم و هم اتمل

کد کدویژن
/*
* x1.c
*
* Created: 05/10/2021 08:03:55 ب.ظ
* Author: COM_PC
*/
#define F_CPU 1000000UL
#include <io.h>
#include <delay.h>

#define BV(bit) (1<<(bit))
#define cbit(reg,bit) reg &= ~(BV(bit))
#define ibit(reg,bit) reg |=(BV(bit))




void main(void)
{
cbit(DDRB,0);

ibit(DDRB,1);
ibit(DDRB,3);

ibit(PORTB,0);

//_delay_ms(500);
while (1)
{
//_delay_ms(500);
ibit(PORTB,3);
delay_ms(50);
cbit(PORTB,3);
delay_ms(50);
if(PINB.0==0) ibit(PORTB,1);
if(PINB.0==1) cbit(PORTB,1);

}
}



/*
* FistTry.c
*
* Created: 12/07/1400 07:24:45 ب.ظ
* Author : COM_PC
*/
#define F_CPU 1000000UL


#define BV(bit) (1<<(bit))
#define cbit(reg,bit) reg &= ~(BV(bit))
#define ibit(reg,bit) reg |=(BV(bit))

#include <avr/io.h>
#include <util/delay.h>


int main(void)
{
cbit(DDRB,0);

ibit(DDRB,1);
ibit(DDRB,3);

ibit(PORTB,0);


while (1)
{
ibit(PORTB,3);
_delay_ms(500);
cbit(PORTB,3);
_delay_ms(500);

if(PINB0==0) ibit(PORTB,1);
if(PINB0==1) cbit(PORTB,1);


}
}




و کد اتمل



-
با شبیه سازی پروتئوس مدار این پروژه ساده و خنده دار را ساختم اما نتیجه خیلی جالب است با کد کدویژن درست اجرا میشود و با اتمل ناقص.




مدار با دو تا مگا8 هست که فقط با فشردن باتن باید ال ای دی 2 هم خاموش بشه و این با کد کدویژن انجام میشه و با اتمل انجام نمی شود.



امکانش هست راهنمایی کنید مشکل از منه یا از نحوه کامپایلر.