#Sipeed Maix BIT
#Grove AI EDGE
COMPUTING
2008 yılında Seeeduino’nun piyasaya sürülmesinden bu yana, Seeed Arduino topluluğuna yazılım katkısında bulunmaktadır. Bugün yeni bir yazılım yayınladık: ArduinoCore-k210.
kendryte-standalone-sdk temel alınarak, Arduino IDE, Linux, Windows, Mac OS X ve diğer geliştirme ortamlarını desteklemek için tam ArduinoCore-API arayüzünü ekledik. ArduinoCore-k210 desteği ile, tüm k210 tabanlı geliştirme kartları Grove Arduino Kütüphanesi’ni ve Arduino topluluğundaki birçok mükemmel Arduino kütüphanesini çalıştırabilir.
ArduinoCore-k210’u nasıl kullanacağınız aşağıda açıklanmıştır:
Sipeed Maix Bit üzerinde WS2812 kullanın
Grove modülleri ile Grove AI EDGE COMPUTING (sadece mühendislik örnekleri) kullanın

ArduinoCore-k210, normal bir IDE olarak da desteklenmektedir. Örneğin, kendryte-standalone-sdk geliştirirken, Arduino Kütüphanesi WS2812FX’i de kullanabilirsiniz.
#include <WS2812FX.h>
#define LED_COUNT 32
#define LED_PIN 13
#define TIMER_MS 5000
// Parametre 1 = şeritteki piksel sayısı
// Parametre 2 = Arduino pin numarası (çoğu geçerli)
// Parametre 3 = piksel türü bayrakları, gerektiği gibi birleştirin:
//
NEO_KHZ800 800 KHz bit akışı
(çoğu NeoPixel ürünü w/WS2812 LED’leri)
//
NEO_KHZ400 400 KHz (klasik ‘v1’
(not v2) FLORA pikselleri, WS2811 sürücüleri)
//
NEO_GRB Pikseller GRB bit akışı için
bağlanmıştır (çoğu NeoPixel ürünü)
//
NEO_RGB Pikseller RGB
bit akışı için bağlanmıştır (v1 FLORA pikselleri, not v2)
//
NEO_RGBW Pikseller RGBW bit akışı için
bağlanmıştır (NeoPixel RGBW ürünleri)
WS2812FX ws2812fx = WS2812FX(LED_COUNT,
LED_PIN, NEO_RGB + NEO_KHZ800);
unsigned long last_change = 0;
unsigned long now = 0;
extern “C” {
#include <stdio.h>
#include <unistd.h>
#include “fpioa.h”
#include “gpiohs.h”
#include “sysctl.h”
uint32_t irq_flag;
#define PIN_LED 25
#define PIN_KEY 26
#define GPIO_LED 3
#define GPIO_KEY 2
uint32_t g_count;
int irq_gpiohs2(void* ctx)
{
irq_flag = gpiohs_get_pin(GPIO_KEY);
printf(“IRQ PIN %d’dir\n”, irq_flag);
uint32_t *tmp = (uint32_t *)(ctx);
printf(“count %d’dir\n”, (*tmp)++);
if (!irq_flag)
gpiohs_set_pin(GPIO_LED, GPIO_PV_LOW);
else
gpiohs_set_pin(GPIO_LED, GPIO_PV_HIGH);
return 0;
}
int main(){
#define NOFREERTOS 1
plic_init();
sysctl_enable_irq();
fpioa_set_function(PIN_LED, FUNC_GPIOHS3);
gpiohs_set_drive_mode(GPIO_LED, GPIO_DM_OUTPUT);
gpio_pin_value_t value = GPIO_PV_HIGH;
gpiohs_set_pin(GPIO_LED, value);
fpioa_set_function(PIN_KEY, FUNC_GPIOHS2);
gpiohs_set_drive_mode(GPIO_KEY, GPIO_DM_INPUT_PULL_UP);
gpiohs_set_pin_edge(GPIO_KEY, GPIO_PE_BOTH);
gpiohs_irq_register(GPIO_KEY, 1, irq_gpiohs2, &g_count);
ws2812fx.init();
ws2812fx.setBrightness(255);
ws2812fx.setSpeed(1000);
ws2812fx.setColor(0x007BFF);
ws2812fx.setMode(FX_MODE_STATIC);
ws2812fx.start();
while(1){
now = millis();
ws2812fx.service();
if(now – last_change > TIMER_MS) {
ws2812fx.setMode((ws2812fx.getMode() + 1) % ws2812fx.getModeCount());
last_change = now;
}
}
return 0;
}
}
“`
ArduinoCore-k210, AI geliştirmenizi daha kolay hale getirmek için çok ilginç bir yazılım projesidir. Herhangi bir hata olmadığını garanti edemeyiz. Herhangi bir uyumluluk sorunu ile karşılaşırsanız veya yeni fikirleriniz varsa, bizimle iletişim kurmak için GitHub bağlantımızı ve forumumuzu kontrol etmekten çekinmeyin, karşılaştığınız sorunları çözmek için elimizden geleni yapacağız. Bu, ArduinoCore-k210, umarım herkes beğenir!
