How do I convert this code to work with the atmega328p it is
How do I convert this code to work with the atmega328p it is in the atmega32 format?
.INCLUDE \"M32DEF.INC\"
LDI R16,(1<<TXEN)
OUT UCSRB, R16
LDI R16,(1<<UCSZ1)|(1<<UCSZ0)|(1<<URSEL)
OUT UCSRC, R16
LDI R16,0x33
OUT UBRRL,R16
AGAIN:
SBIS UCSRA,UDRE
RJMP AGAIN
LDI R16,\'G\'
OUT UDR,R16
RJMP AGAIN
Solution
.INCLUDE \"M32DEF.INC\"
.ORG 0
MAIN :
;//==INITIALIZE STACK POINTER==//
LDI R18,HIGH(RAMEND)
OUT SPH,R18
LDI R18,LOW(RAMEND)
OUT SPL,R18
;//==INITIALIZE ALL REGISTER TO 0==//
LDI R16,0x00 ; PRODUCT A REGISTER
LDI R17,0x00 ; PRODUCT B REGISTER
LDI R18,0x00 ; STACK POINTER/DONE PIN
LDI R19,0x00 ; COUNTER REGISTER VALUE ALWAYS 0
LDI R20,0x00 ; DELAY REGISTER
LDI R21,0x00 ; DELAY REGISTER
LDI R22,0x00 ; SENSOR REGISTER
LDI R23,0xFC ; HOLD SHAFT
LDI R24,0xFD ; RELEASE SHAFT
LDI R25,0X00
OUT TCNT0,R25 ; INITIALIZE COUNTER WITH IMMEDIATE 0
LDI R26,0x00 ; ALWAYS 00 VALUE
OUT PORTD,R16 ; PULL DOWN PORTD
LDI R27,0x00 ; ALL TO DO WITH TRANSMIT AND RECEIVE
63
LDI R28,0xF9 ; FOR MAKING MOTORS DISABLE
;//==WAIT FOR PAID SIGNAL==//
LDI R18,0xFF
OUT DDRA,R18 ;PORTA OUTPUT PRODUCT A
OUT DDRC,R18 ;PORTB OUTPUT PRODUCT B
CBI DDRB,0 ;PORTB-0 AS INPUT
CBI PORTB,0 ;PULL DOWN PORTB-0
CLR R18
OUT PORTA,R18 ;PULL DOWN PORTA
OUT PORTC,R18 ;PULL DOW PORTC
CBI DDRD,0 ; PORTD-0 AS INPUT ..RX PIN AS INPUT
SBI DDRD,1 ; PORTD-1 AS OUTPUT.TX PIN AS OUTPUT
CBI PORTD,1 ; PULL DOWN TX
CBI DDRD,7 ; PAID PIN AS INPUT .RECEIVE FROM PC
CBI PORTD,0 ; PULL DOWN PORTD0
CBI PORTD,7 ; PULL DOWN PORTD7
CLR R18
OUT PORTA,R28 ; EN,DIR,PULSE = 1 ROLLER STOP
OUT PORTC,R28 ; ROLLER STOP
;//==ENABLE TRANSMITTER AND RECEIVER==//
LDI R19,(1<<TXEN)|(1<<RXEN)
OUT UCSRB,R19 ;ENABLE TX AND RX
LDI R19,(1<<UCSZ1)|(1<<UCSZ0)|(1<<URSEL)
OUT UCSRC,R19 ;ASYNCHRONOUS OPERATION, NO PARITY, 1 BIT
; FOR STOP BIT, AND 8 BIT CHARACTER SIZE
LDI R19,0X33
OUT UBRRL,R19
LDI R27,\'R\'
CALL TRANSMIT ;SEND \'R\'
64
LDI R27,\'E\'
CALL TRANSMIT ;SEND \'E\'
LDI R27,\'A\'
CALL TRANSMIT ;SEND \'A\'
LDI R27,\'D\'
CALL TRANSMIT ;SEND \'D\'
LDI R27,\'Y\'
CALL TRANSMIT ;SEND \'Y\'
LDI R27,\' \'
CALL TRANSMIT ;SEND \' \'
LDI R27,\' \'
CALL TRANSMIT ;SEND \' \'
; DISPENSER SEND \'READY\' TO INTEL
;//==RECEIVE DATA==//
RECEIVE_A:
SBIS UCSRA,RXC
RJMP RECEIVE_A
IN R16,UDR
;//==SEND RECEIVE PRODUCT A SIGNAL==//

