Здравствуйте. Использую DigiSpark Attiny85,
хочу прикрутить модуль CAN, (mpc2515)
Аппаратного SPI нет у 85, есть USI. Установил AtinyCore https://github.com/SpenceKonde/ATTinyCore и скетч работающий для Нано стал компилироваться и заливаться в 85у.
Два вопроса, будет ли корректно работать mpc на (по) USI Или вернуться к Нано?
На плате mpc есть пин INT. В ардуино Нано он подключен к D2.
Переназначения этого пина в библиотеке я не нашел, на какой порт его повесить в 85ой?
Код:
#include <SPI.h> //Library for using SPI Communication
#include <mcp2515.h> //Library for using CAN Communication
struct can_frame canMsg;
MCP2515 mcp2515(PB5);
void setup()
{
while (!Serial);
Serial.begin(9600);
SPI.begin(); //инициализация связи по протоколу SPI
mcp2515.reset();
mcp2515.setBitrate(CAN_500KBPS,MCP_8MHZ); //устанавливаем скорость шины CAN 500 кбит/с и частоту кварцевого генератора 8 МГц
mcp2515.setNormalMode();
}
void loop()
{
canMsg.can_id = 0x008; // устанавливаем CAN id в 0x036
canMsg.can_dlc = 8; // длина поля данных CAN = 8
canMsg.data[0] = 0x00; //обновляем значение влажности в поле [0]
canMsg.data[1] = 0x00; // обновляем значение температуры в поле [1]
canMsg.data[2] = 0x01; //все остальные поля устанавливаем в 0
canMsg.data[3] = 0x02;
canMsg.data[4] = 0x03;
canMsg.data[5] = 0x55;
canMsg.data[6] = 0x00;
canMsg.data[7] = 0x00;
mcp2515.sendMessage(&canMsg); //передаем CAN сообщение
delay(100);
}