Пример #1
0
void mcp_init(){
	deselectChip();
	SPI_MasterTransmit(MCP_RESET);
	//setLoopbackOperationalMode();
	setOperationModeNormal();
	mcp_write(MCP_CANINTE, MCP_RX_INT);
	mcp_bit_modify_instruction(MCP_RXB0CTRL, 0b01100000, 0xFF);
}
Пример #2
0
int main(int argc, char **argv)

{
   if (argc == 1) {
     printf("%s <команда>\nin -чтение данных из порта,установленых на ввод\nout-установка состояния порта,установленного на вывод.\n", argv[0]);
     return 1;
   } 
   else if (argc == 2) {
  if(strcmp(argv[1], "out") == 0) mcp_state_out();
  else if(strcmp(argv[1], "in") == 0) mcp_state_in();
  else printf("Нет такой команды\n");
  return 1;
   }
   
   if(strcmp(argv[1], "out") == 0) {
   
        if (argc != 4) {
             printf("Настройка порта: %s <порт> <состояние>\n", argv[0]);

return 1;
}
int mcppin = atoi(argv[2]);
int mcpst = atoi(argv[3]);

mcp_write (mcppin,mcpst);
     
     
   }
   else if(strcmp(argv[1], "in")== 0) {
   if (argc != 3) {
             printf("Чтение одного порта: %s <порт>\n", argv[0]);
     mcp_state_in();
     return 1;
   }
   int mcppin = atoi(argv[2]);

   printf ("%d\n",mcp_read (mcppin));
   
   }





   return 0;
}
Пример #3
0
void mcp_clear_interrupt(){
	mcp_write(MCP_CANINTF, 0x00); //TODO needs to be fixed, can't clear all interrupts.
}